社区
C语言
帖子详情
gcc编译器对二维数组的大小有限制吗?
jovon
2014-09-06 10:03:39
用vi编辑器写c程序,main函数里定义一个a[1001][3000]的二维数组,编译过程没问题,运行时出现段错误。如果定义成a[1001][2000],程序能顺利运行。哪位大神能解释一下什么原因?
...全文
376
4
打赏
收藏
gcc编译器对二维数组的大小有限制吗?
用vi编辑器写c程序,main函数里定义一个a[1001][3000]的二维数组,编译过程没问题,运行时出现段错误。如果定义成a[1001][2000],程序能顺利运行。哪位大神能解释一下什么原因?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jovon
2014-09-06
打赏
举报
回复
解决了,改成全局变量就OK了。多谢二位指点!
Falleyes
2014-09-06
打赏
举报
回复
你自己算一下,如果是int数组,一个int是4个字节,这个数组你要分配1001*3000*4B的空间。 一般来说,不要分配这么大的二维数组,建议使用malloc动态分配,需要多少,分配多少。
brookmill
2014-09-06
打赏
举报
回复
改成全局变量或者静态局部变量应该就好了。 局部变量在栈上分配内存,栈内存相对有限,楼主的数组至少有几M,估计是把栈撑爆了
Falleyes
2014-09-06
打赏
举报
回复
理论上没有大小限制,主要是你的电脑限制。是否能够分配连续那么大的空间呢?
C语言迷宫游戏(
二维数组
)C-mazeGame-master.zip
C语言迷宫游戏(
二维数组
)C_mazeGame-master.zip
c代码-
二维数组
。
c代码-
二维数组
。
《C++程序设计实践教程》(任志鸿版)第12章实验结果.docx
C++11 标准,
gcc
编译 内含自己写的代码及实验结果,仅供参考, 有问题也可以交流mail:1356199860@qq.com
C数组资料
C程序设计中的数组资料
c语言多维数组.pdf
c语言多维数组.pdf
C语言
70,022
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章