请问我的理解对吗 c++

来源:百度知道 编辑:UC知道 时间:2024/06/16 18:53:57
全局变量是在编译时就给他分配了内存空间,而局部变量是在程序运行时由系统给他动态分配空间的
我主要是想问,在函数里定义的局部变量,就是自动变量,是在程序运行时候,当调用此函数时才分配给这个局部变量空间的吗,就是局部变量是什么时候进栈的

全局变量是在全局数据区。局部变量是进栈的。函数返回就释放。
针对这个:
调用此函数时才分配给这个局部变量空间的吗,就是局部变量是什么时候进栈的

你说的对,
进栈的顺序是: 函数指针,函数参数,局部变量。以此类推

没有想过 等.

不是的吧,是根据你申请的变量的存储类型来定的 默认是auto 还有static register和extern

不是进栈,而是函数调用的时候在栈中分配空间

当程序 进入子函数后,建立函数栈(最大2M),对所有的变量分配内存空间
运行结束后,销毁函数栈