我正在寻找一种增加堆栈大小的方法,以便我的程序运行,原因是我有一个导致堆栈溢出的递归调用。无论如何我可以更改默认堆栈大小吗?
user146960
问问题
2749 次
3 回答
2
如果它是 *NIX,请使用
ulimit -s <number_in_kb>
在运行程序之前,您应该在您的环境中设置它。您也可以按照此答案中的描述以编程方式设置它。
您可以通过运行查看当前值ulimit -a
。
于 2013-04-08T19:59:23.273 回答
0
使用 editbin 更改程序的堆栈大小:
EDITBIN.EXE /STACK: yourprogram.exe
于 2013-04-08T19:58:15.250 回答
0
它的编译器依赖。在 Visual Studio 中,stacksize 固定为 1 MB。您可以使用 /STACK 链接器选项增加它。
于 2013-04-08T20:01:51.537 回答