关于C语言中数组定义问题
如图所示,定义2行3列数组a,2行3列数组b.1:为什么b数组的第一行有六个元素,不应该是2行3列的吗,并且第一行是按照a的顺序存储的,为什么呢?2:若将b数组改定义为b...
如图所示,定义2行3列数组a,2行3列数组b.1:为什么b数组的第一行有六个元素,不应该是2行3列的吗,并且第一行是按照a的顺序存储的,为什么呢?2:若将b数组改定义为b[1][3],即改成了1行3列数组,为什么也是同2行3列一样的存储方式呢?
展开
1个回答
2016-08-06 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
主函数内定义的数组在堆栈段中分配内存。
全局变量数组在数据段中分配内存。
一般数据段比堆栈段大很多,
所以堆栈段分配不了的内存,数据段可以分配
(1)在堆栈段中分配内存,由于太大无法分配,所以错误。
(2)在数据段中分配内存,数据段可以分配,无错误。
(3)数组比(1)需要的内存少,在堆栈段大小范围内,可以分配,无错误
(4)同(3)
全局变量数组在数据段中分配内存。
一般数据段比堆栈段大很多,
所以堆栈段分配不了的内存,数据段可以分配
(1)在堆栈段中分配内存,由于太大无法分配,所以错误。
(2)在数据段中分配内存,数据段可以分配,无错误。
(3)数组比(1)需要的内存少,在堆栈段大小范围内,可以分配,无错误
(4)同(3)
追问
不好意思没看懂。。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询