网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
06月14日漏签0天
c语言吧 关注:798,806贴子:4,356,231
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 3回复贴,共1页
<<返回c语言吧
>0< 加载中...

应用程序的 主函数栈空间限制,能讨论下吗?

  • 只看楼主
  • 收藏

  • 回复
  • dot_wish
  • 毛蛋
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
///////////////////////////////////////////win32 控制台应用程序
const unsigned int   large = 0x6FFFFFFF ;

void foo()
{

    char  limit[large] ;
}

int main()
{
    foo() ;
    char  limit[1036096] ;
}
////////////////////////////////////////////////////////

谁知道这样的main函数栈空间标准吗,
在main的栈上能分配的最大空间是1036096 字节,即使多分配一字节,或是
多定义一个变量也不行了,编译能通过,一运行就出错了,
但是在其它函数里却没这种情况,要在普通函数的栈上分配太多空间的话
我用的VC6 会报错:
negative subscript or subscript is too large

在Win32 应用程序里
#include<windows.h>

int WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, 
    LPSTR lpCmdLine, int nShowCmd) 
{
    char  limit[1036016] ;
}

这也是极限了即使分配char limit[1036017] 应用程序也会异常中止 
我用的系统是WinXP,大家试试自己的系统里主函数的栈空间有多大


  • vc99
  • 强能力者
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
可能与系统的硬件也有关系吧,我以前这么做过,最大只到32767,
在置顶有 ◆大下标数组操作:http://post.baidu.com/f?kz=4201196
你看看是不是你的意思,
你上面定义的,我在WINME+mingw下,可以编译,但是运行即出错


2025-06-14 22:43:27
广告
  • dot_wish
  • 毛蛋
    1
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
我可以看到异常EXCEPTION_STACK_OVERFLOW


  • 60.223.26.*
快试试吧,
可以对自己使用挽尊卡咯~
◆
◆
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
"主函数栈空间限制"

这和那个没关系,静态内存分配不允许那么大,需要动态分


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 3回复贴,共1页
<<返回c语言吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示