C语言 看图说话-一维数组·名·特性

 先来看这张图,我们定义了一个一维数组,在这个数组中,他的数组名本质上就是个地址,是这个数组的首地址,我们也可以理解为这个数组第0个元素的地址,那么在这个地址上加上2意思就是向后移动两列,找到的就是这个数组第2各成员的地址。在这里有个公式 *(参考地址+偏移)==参考地址[偏移] 讲的其实就是[]的计算过程,意思就是通过数组名找到第0列的地址,再向后偏移四位就找到了第4列的地址,然后通过*操作就可以得到他的空间。快捷方式就是 参考地址[偏移]。最后要说的是arr与&arr的区别,虽然他们两个的值相同,但是代表的意义不同,arr代表的是数组第0列的地址,向后偏移1位找到的是第1列的地址,而&arr找到的是这个数组的地址,向后偏移1位找到的就是数组后边的地址。接下来看几个问题:

1.数组的特征包括哪些?

答:长度固定、同类型、有编号。

2.数组名的特性包括什么?

他是数组整个存储空间的首地址,也是第0个元素的地址,他是一个地址常量,所以是不可以修改的。

3.数组名+1与&数组名+1的区别?

答:刚才说到了,数组名+1是在数组中列的移动找到的就是第1列的地址;而&数组名+1属于是数组外的移动,找到的是数组后面的地址。

4.[]运算符的计算过程是什么?

答:[]其实就是空间寻找的快捷方式,他的计算过程是:*(参考地址+偏移) 。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员懒羊羊

多多支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值