在c ++中定义变量时的分段错误

时间:2015-05-22 19:57:54

标签: c++ segmentation-fault

我已将其缩小到导致分段错误的特定行。

int match[2000][2][2000];

我使用此数组超出计算机内存限制,因为我的代码在更改为此时可以正常运行。

int match[1000][2][1000];

1 个答案:

答案 0 :(得分:4)

您似乎有效地超出了堆栈限制。

您可以通过ulimit -sulimit -a进行检查,以检查当前设置的所有限制。

只需使用ulimit -s <your size>来增加堆栈大小或使用动态内存分配(但我想你已经知道这个解决方案了。)

PS:ulimit将在shell中运行。

相关问题