一维数组和二维数组的内存存储情况

2 篇文章 0 订阅
1 篇文章 0 订阅
这篇博客详细介绍了数组的概念,以整形数组为例,解释了一维数组的定义、下标以及初始化时的注意事项。文章指出,当数组初始化的大小大于实际赋值时,未赋值的元素默认为0。此外,还探讨了二维数组的存储方式,通过内存存储情况展示了二维数组实际上是一维数组的连续存储,每个元素间相差4个字节,强调了数组按行存储的事实。
摘要由CSDN通过智能技术生成

拿整形举例子,数组就是一组相同类型元素的集合

一维数组

int arr[10] = {1,2,3,4,5,6,7,8,9,10};、

而数组里面的数都有一个下标,而这个下标是由0开始的

例如1的下标就是0;2的下标就是1,然后再以此类推

也就是arr[0] = 1; arr[1]=2 以此类推

而如果数组初始化时给定的大小大于初始化时你赋予的值

例如arr[10] = {1,2,3}; 这时,除了1,2,3;剩下的值都为0,也就是arr[3-9]的值都是0

如果你不想给定一个数组的大小,这个数组就会根据里面所有的元素来自动给定大小

例如arr[ ] = {1,2,3}; 此时[ ]里面默认的就是3

 

二维数组

直接举例arr[3][4];

如果按照我们惯用思维,这个数组应该是竖着3个,横着4个,组成一个平面

打印二维数组如上图

那到底是不是我们想的是一个平面呢?

我们先来看看一维数组 内存存储情况

 

 每一个元素相差四个字节

我们再来看看二维数组

可以看到,其实二维数组也是一样,每一个元素之间同样是相差4个字节,所以二维数组也是按上下来存储的,当然,我们可以将它想象成一个平面的样子。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值