答案是堆栈大小.有两个记忆:堆和堆栈.
数组在堆栈中分配.您现在可以使用该ulimit -a命令进行限制.在我的系统上,我得到了stack size (kbytes, -s) 8192,最多8Mb.你可能也一样.
ulimit -a
stack size (kbytes, -s) 8192
如果你想在堆中分配,你需要玩malloc,指针等.
malloc
例如
char* qstr = malloc(3 * 200 * 100000);