科学文化观察植物教案:关于变量的存储空间的问题

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 07:29:26
假如有一段C代码:
int a;
int* b;
staic int c;
int d(int e)
{int f;
static int g;
}
请问其中的a,b,c,d,e,f,g七个变量分别存储在什么地方?
堆中?堆栈中?还是在其他什么地方?

堆是堆 栈是栈 不要混淆。。
给你判断标准 自己去看看吧
静态内存 这种内存编译的时候就分配好了,这种内存在程序运行期间一直存在。由编译器负责分配。 程序退出时S释放.不用程序员参与。

栈内存 是函数调用的创建的。函数入栈前会为函数、函数参数、函数中定义的变量在栈里申请空间。 函数退出时释放,不用程序员参与。

堆内存 程序员根据需要用malloc或new创建的内存 在适当时机由程序员用free或delete释放

值类型存储在栈中,指针类型存储在堆中。