声明一个int型的数组,给大一点空间,如int a[1024*1024],写一个空函数之后,编译成exe文件,然后查看exe文件大小,如果是在运行前就分配的话,exe文件肯定是大于4*1024*1024B=4M的,如果看到exe明显小于4M,那么可以说明,并不是在运行前分配的内存。
希望可以帮助你。程序小例如下:
#include
class A
{
int a[1024*1024];
};
int main(void)
{
A a;
return 0;
}
用debug功能就知道了,分配没有,分配的地址是多少都有显示。
使用debug工具查看, 或者编写一个打印变量的函数观察.