在Visual C++中,您可以使用指令#pragma.例如:
#pragma comment(linker, "/STACK:2000000")
#pragma comment(linker, "/HEAP:2000000")
Run Code Online (Sandbox Code Playgroud)
第二次编辑:我从你的评论中看到你在Windows中工作,所以我在下面的Unix答案对你没有多大帮助.但请参阅使用Visual Studio和C/C++ 确定堆栈空间最大堆栈大小的程序.
在Linux中,堆栈大小通常是有限的.命令ulimit -s将以Kbytes为单位给出当前值.您可以(通常)更改文件/etc/security/limits.conf中的默认值.
您还可以根据权限使用每个进程更改它setrlimit().例如,参见我对Segmentation故障的回答:当bufffer> 4M时,在Ubuntu的C程序中进行堆栈分配.
对于堆,请参阅例如C中的堆大小限制.但我不相信你可以增加或减少最大尺寸.
| 归档时间: |
|
| 查看次数: |
45106 次 |
| 最近记录: |