【发布时间】:2017-02-24 02:38:32
【问题描述】:
在我的程序中,我声明了一个初始化的全局变量(作为一个数组)。 但它只影响可执行文件的大小,不影响程序的内存使用。
我的程序是这样的
char arr[1014*1024*100] = {1};
int _tmain(int argc, _TCHAR* argv[])
{
while (true)
{
}
return 0;
}
可执行文件大小为118MB,但运行程序时内存占用仅为0.3MB
谁能帮我解释一下?
【问题讨论】:
-
你编译优化了吗?
-
你用什么来获得“内存使用量”? (一般阅读“C 数据部分”将提供实际问题的答案,例如参见stackoverflow.com/questions/2297706/data-section-in-c)