从一维数组角度,理解二维数组
int a[3][4];
若序号规定从0开始计数。
1、可认为是一个一维数组,数组元素类型为int x[4],即4个int类型元素组成的一维数组。
2、在连续空间分布为:[[int, int, int, int], [int, int, int, int], [int, int, int, int]]
3、不变道理:数组名表示数组首元素地址。
4、不变道理:若a为指针,则a[n]
等价于*(a+n)
5、a
表示一维数组首元素地址,即第0个[int, int, int, int]
地址。
6、a+1
表示第1个元素地址。
7、a[0]
表示第0个元素[int, int, int, int]
,即元素的数组名,又因为数组名表示数组首元素地址,所以也表示第0个元素[int, int, int, int]
中第0个int的地址,a[0]
是一个指针,指向的数据类型为int。
8、a[0]+1
表示第0个元素[int, int, int, int]
中第1个int的地址。
9、*(a[0]+1)
,即*(*(a+0)+1)
即a[0][1]
,表示第0个元素[int, int, int, int]
中第1个int的数值。