我究竟做错了什么?在Mac(2GB RAM)上使用Eclipse时遇到了以下问题:
每当我尝试创建一个超过8384896字节的数组时,我就会出现分段错误.以下程序将执行:
#include <stdio.h>
main()
{
double x[1048112];
printf("sizeof(x) = %li", sizeof(x));
}
Run Code Online (Sandbox Code Playgroud)
输出将是(如预期的那样):
sizeof(x)= 8384896
但是增加x中的元素数量或在main()中创建其他变量会导致无法执行的程序和段错误.看起来我正在达到一些内存限制,我不明白为什么会发生这种情况.如果有人能向我解释这个问题,或者可能为我的问题提供某种解决方案,我将非常感激.