Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Unused Static Stack Varibles

Name: Anonymous 2009-10-31 1:48

Hey /prog/,

In C, are variables located in the stack recycled/freed when they are no longer needed? I suppose that this depends on the compiler, but does anyone know if GCC does this?

To be a little clearer, let's say I have these two translation units...

main.c/.h
settings.c/.h

main() calls the function get_settings() (located in settings.c) which will fill the variables (located in main.c) with data read from a file and then returns.

Since there is no longer any purpose for the staic variables declared in settings.c, are they freed once get_settings() returns?

Name: Anonymous 2009-11-01 8:45

>>48
Smart enough? Let's say you have a pool of usable registers, for the variable `a', the compiler assigns one register (edx), and after `a' becomes out of scope, the register(edx) becomes free to be used for another variable, in which case it assigns it to b. This was just an example. Go read the dragon book or some other book on compiler design. Or if you can't be bothered to read some proper literature, http://en.wikipedia.org/wiki/Register_allocation

Name: Anonymous 2009-11-01 8:48

>>48
okay lesson one
in computer numbers are binary
so they are liek 010011101003010
or they are like adbagcbf then they are haxadecimal
you may also say 0xnumber to be hax
but they are harder so you must binary
so computer goes faster (no translate time)
you may also use other languages because
what i said is assembler what computer speaks you have to use assembler but can use other languages
like c (with the ++ extension maybe for serious programing) or pascal or javascript (java in short) or maybe haskell but i dont understnad it it has no loops so i dont konw how it works you cant code with no loops
get it so far?

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List