【发布时间】:2009-10-18 13:43:28
【问题描述】:
我做错了什么? 在 Mac(2GB RAM)上使用 Eclipse 时,我遇到了以下问题:
每当我尝试创建一个超过 8384896 字节的数组时,都会出现分段错误。将执行以下程序:
#include <stdio.h>
main()
{
double x[1048112];
printf("sizeof(x) = %li", sizeof(x));
}
输出将是(如预期的那样):
sizeof(x) = 8384896
但是增加 x 中的元素数量或在 main() 中创建额外的变量会导致程序无法执行和段错误。看起来我达到了一些内存限制,我不明白为什么会这样。 如果有人能向我解释这一点,或者为我的问题提供某种解决方案,我将不胜感激。
【问题讨论】:
-
当我看到这样的问题时,我意识到 Joel 应该将网站命名为“BungeeJumping”。实际上什么都不会改变。
标签: c memory memory-management