1:一维数组:
int a[5]; &a是数组的地址,故&a + 1是加一个数组大小的长度。增加20个字节。
*(&a) = a;对一维数组的地址取值等于数组首元素的地址。
2:二维数组:
int a[2][2];*(*(a + i)+ j);
a + i:第i+ 1个一维数组的地址。
*(a+i):第i+ 1个一维数组首元素的地址。
*(a+ i)+ j:第i+1个一维数组的第j+1个元素的地址。
*(*(a+i)+j):第i+1个一维数组的第j+1个元素的值。
3:三维数组:
int a[2][2][2] *(*(*(a+i)+j)+k).
a+i:第i+1个二维数组的地址。
*(a+i):第i+1个二维数组的第一个一维数组的地址。
*(a+i)+j:第i+1个二维数组的第j+1个一维数组的地址。
*(*(a+i)+j):第i+1个二维数组的第j+1个一维数组首元素的地址。
*(*(a+i)+j)+k:第i+1个二维数组的第j+1个一维数组的第k+1个元素的地址。
*(*(*(a+i)+j)+k):第i+1个二维数组的第j+1个一维数组的第k+1个元素的值。