1、C存储空间布局
size 命令,可以报告正文段,数据段和bss段的长度。
size a.out
2、自动变量
自动变量,只在定义它们的时候才创建,在定义它们的
函数返回时系统回收变量所占
存储空间。对这些变量
存储空间的分配和回收是由系统自动完成的。一般情况下,不作专门说明的
局部变量,均是自动变量。自动变量也可用关键字auto作出说明。例如:
void f()/**/
{/**/
auto int c=3;/*c为自动变量*/
int x=2;/*x未说明存储类型,则为缺省类型(自动)*/
}/**/
自动变量只有3种存储方式,分别是存储在数据段或bss段(静态局部变量);存储在寄存器里(寄存器变量);存储在栈中(一般自动变量)。由于绝大多数自动变量从存储在栈中,所以自动变量的作用域往往只在函数内,起生命周期也往往只持续到函数调用的结束。