在Linux中,可以使用以下方法來設置堆棧大小:
ulimit -s 5120
其中,-s參數用于設置堆棧大小,單位為KB。
#include <sys/resource.h>
int main() {
struct rlimit rl;
rl.rlim_cur = 5120; // 設置當前堆棧大小為5MB
rl.rlim_max = RLIM_INFINITY; // 設置最大堆棧大小為無限
setrlimit(RLIMIT_STACK, &rl);
// 程序的其他代碼
return 0;
}
gcc -Wl,--stack,5242880 myprogram.c -o myprogram
其中,-Wl,–stack,5242880選項用于將堆棧大小設置為5MB。