社区
C语言
帖子详情
gcc编译器对二维数组的大小有限制吗?
jovon
2014-09-06 10:03:39
用vi编辑器写c程序,main函数里定义一个a[1001][3000]的二维数组,编译过程没问题,运行时出现段错误。如果定义成a[1001][2000],程序能顺利运行。哪位大神能解释一下什么原因?
...全文
386
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语言中,
二维数组
是一种非常重要的数据结构,它被广泛用于存储和处理表格型数据。
二维数组
可以被视为由多个...在这个项目中,你可以尝试修改数组的
大小
、初始化不同的值,或者添加更多的操作来熟悉
二维数组
的使用。
《C++程序设计实践教程》(任志鸿版)第12章实验结果.docx
在本篇文档中,我们探讨了两个C++编程实验,它们是基于C++11标准的,使用
GCC
编译器
,并且与数组处理有关。这两个实验分别涉及
二维数组
存储成绩和输出矩阵中的最大元素。 实验12-1: 在这个实验中,主要目标是处理二...
C数组资料
然而,在某些C
编译器
中(如
GCC
),可以使用变量长度数组(VLA)的概念,允许在运行时指定数组的
大小
,但这不是标准C的一部分,并且可能不适用于所有环境。 ### 初始化数组 数组可以在定义时进行初始化,即为数组的...
c语言多维数组.pdf
在内容片断中,首先给出了一个
二维数组
的定义和初始化例子: ```c int array[3][3] = {{1,2,3}, {4,5,6}, {7,8,9}}; ``` 这里定义了一个3行3列的
二维数组
,并通过大括号进行初始化。该数组被用来演示如何通过...
20151910042-刘鹏-C实验05-数组程序设计1
总的来说,这个实验强化了学生对C语言中数组概念的理解,包括一维和
二维数组
的使用、数组初始化、字符串处理以及动态调试的技巧。通过实际编程和运行,学生能够更深入地体验数组在解决问题中的应用。
C语言
70,025
社区成员
243,245
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章