Where does global, static, and local, register variables, free memory and C Program instructions get stored?
Question :
Where does global, static, and local, register variables, free memory and C Program instructions get stored?
Global: Wherever the linker puts them. Typically the ―BSS segment‖ on many platforms.
Static: Again, wherever the linker puts them. Often, they‘re intermixed with the globals. The only difference between globals and statics is whether the linker will resolve the symbols across compilation units.
Local: Typically on the stack, unless the variable gets register allocated and never spills.
Register: Nowadays, these are equivalent to ―Local‖ variables. They live on the stack unless they get register-allocated.
Similar Questions
What is storage class? What are the different storage classes in C?
What is the use of typedef?
What are register variables? What are the advantages of using register variables?
Describe about storage allocation and scope of global, extern, static, local and register variables?
Where does global, static, and local, register variables, free memory and C Program instructions get stored?
Where is the auto variables stored?
What is static identifier?
What are macros? What are its advantages and disadvantages?
What does static variable mean?