C的默认空闲堆栈空间 - 找到安全最大值

时间:2015-10-13 01:16:02

标签: c memory stack stack-overflow

我只是好奇我可以在C程序中使用多少堆栈空间。

但是为了让我知道并创建一些独立于OS的东西,我想知道用户通常可用于他们程序的默认堆栈空间,所以我不会过度分配。

目前我通过以下方式分配了一个大小约为1 MB的char数组:

char item[1000000];

我相信linux可以保留一个大小不超过8 MB的默认堆栈空间。在我的计算机上,我将其设置为20 MB。我不确定Windows中的默认堆栈空间大小。

那么我的问题是,在将程序交给另一台比我更新的计算机之前,我可以在我的程序中保留最高安全堆栈空间量,因为它耗尽了堆栈空间而导致程序崩溃?

0 个答案:

没有答案