在C中创建大型数组但无法访问内存

时间:2015-02-11 19:28:00

标签: c arrays

我目前正在创建一个如下所示的大型数组:

unsigned char arr[35000][500];

然后我尝试用256个字符写入数组:

for(i=0; i < 256; i++)
{
  arr[i][0] = i;
}

当我这样做时,我得到以下seg错误:

Program received signal SIGSEGV, Segmentation fault.
0x00000000004007e3 in main () at arr.c:41
41        arr[i][0] = i;

有关为何发生这种情况的任何建议?

1 个答案:

答案 0 :(得分:1)

你可能发生了一些堆栈溢出。考虑使用动态内存分配