基本问题:变量声明与定义
c吧
全部回复
仅看楼主
level 1
◆ae86丨 楼主
int a;//这是声明,请问这时候这个局部变量开辟内存空间了吗?.....有的说开辟了,有的说在后面a=10;语句才开辟.......到底是怎么个情况?在这上面,c、c++或者其他语言会有区别吗?.....另外extern int b;声明另一个文件中的全局变量时,是否会它给开辟内存空间?还是说b=10;时开辟空间?还是说本cpp编译的object不会有b的空间,b的内存空间在别的地方?
2022年10月09日 16点10分 1
level 7
一般来说如果在main里面就是开劈了,如果在外面就是声明。但是这和编译器有关,很多编译器都会自动开辟空间,并默认初始化为0,有的编译器却不会这么做,尽量自己初始化,不要依赖编译器行为。
2022年10月10日 00点10分 3
1