二维数组可以看成一维数组,b[3][4]有三个元素:b[0],b[1],b[2],我们可以称它为一级一维数组,他的元素是地址;而这三个元素每个元素又有4个元素组成,我们可以称他为二级一维数组,数组名是b[0],b[1],b[2],他的元素是数据。
那么b[1][1]如何表示呢?这是一级数组第二个地址元素的第二个数据元素。要找个这个数据,需要找到其地址,找到其地址的办法很多:
因为数组名可以引用数组元素,数组名是数组元素首地址,所以对待二级一维数组b[1]来说,第一个元素是*b[0],第二个元素是
*(b[1]+1)。也可以从第一个数据元素地址找,第一个数据元素地址是b[0],那么要找的元素地址是b[0]+5,所以要找的值是对b[0]+5取去地址符即可。
从一级数组的角度出发,b是数组的首地址,所以对b取去地址符得到第一个元素,b[0], 他是地址,所以又回到了第一个问题的视角上了。
对待这个问题,要一定要分两级考虑,保证目标是找到所需元素的地址,就能很快解出来。