我遇到了一個問題,我需要做一些大數據處理並創建太大的數組似乎導致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