课程中说windows系统的默认栈大小是1M,那是不是在函数块内不能定义超过1M大小的数据?比如char acBuffer[2000]
来源:6-14 几种变量的对比
joeydonotcry
2021-07-31
void func()
{
char acBuffer [2000];
}
写回答
1回答
-
Widnows默认给一个线程1M的栈空间只是一个经验值,不同版本的系统可能会不一样。不用太过教条,但是给我们的启发时如果大量的空间处理,不要在栈上来完成(可以在堆里new出空间来操作),否则会overflow。VS2015编译器里可以手动修改栈保留空间大小,用于支持不同系统环境。
022021-08-01
相似问题