首页 > 编程语言 > 详细

C语言简介---通过指针引用多维数组

时间:2020-07-10 14:14:41      阅读:73      评论:0      收藏:0      [点我收藏+]

  在理解C语言中的二维数组时,我们通常用矩阵的形式来表示二维数组,但这只是逻辑上的概念,但是在内存中,各元素是连续存放的,不是二维的,是连续的。

  从二维数组的角度来看,a代表二维数组首元素的地址,现在的首元素不是一个简单的整型元素(以int a[3][4]为例),而是以四个整型元素所组成的一维数组,因为a代表的是首行的首地址(行号为0),a+1代表序列为1的行的首地址。

 

  a[0]和*(a+0)等价,a[1]和*(a+1)等价,a[i]和*(a+i)等价。a[0]+1和*(a+0)+1都是&a[0][1]。

  解析:a+1是二维数组a中序号为1的行的首地址(序号为0起算),而*(a+1)并不是a+1单元的内容值,因为a+1并不是一个变量的存储单元。也就谈不是它的内容。*(a+1)就是a[1],而a[1]是一维数组名,所以也是地址,它指向a[1][0]。a[1]和*(a+1)都是二维数组中地址的不同表现形式。

C语言简介---通过指针引用多维数组

原文:https://www.cnblogs.com/RanWhoo/p/13278752.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!