1
cnbatch 20 小时 2 分钟前
程序编译时可以自行指定栈大小,默认设置 1M ,可以自己改:
https://learn.microsoft.com/en-us/cpp/build/reference/stack-stack-allocations?view=msvc-170 该设置的相应截图: https://stackoverflow.com/questions/14080982/visual-studio-c-c-array-size-unhandled-exception-stack-overflow 另外很好奇你的数组是怎样声明的? 我试了下: char test[10240000] = {}; std:cout << sizeof(test) << "\n"; 默认设置不改,运行的时候会爆栈 |
![]() |
2
GeekGao 30 分钟前
Stack 最大限制:Windows 通常限制单个线程栈最大为 1GB 可以通过编译器参数调整初始大小
Heap 最大理论限制:32 位系统下约 2GB ( 3GB ),64 位系统下仅受限于物理内存和页面文件大小.实际使用时受系统资源限制 |