我遇到了一个问题,我需要做一些大数据处理并创建太大的数组似乎导致Segmentation fault (core dumped)
。这是问题的一个复制:太大的嵌套数组导致分段错误(核心转储)
int main() {
struct { char a[2000][12] } b[2000];
return 0; }
我使用的Archlinux 64位,cc
作为一个编译器,ulimit -s
返回8192
这是奇怪的,因为我有24GB的RAM。任何想法如何解决这个问题?我认为它与stack
和heap
有关,但我不知道这些是什么。
这是堆栈溢出! –
@KirillBulygin此网站已达到其目的,并将关闭。 – nicomp
您需要从堆中分配。堆栈大小通常限制在1MB左右。阅读malloc/free。 – OldProgrammer