这里不做过多的说明了,主要有几点概念要搞清楚
i行地址
i行首地址
i行j列元素地址
i行i列元素
需要明确的一点是,i行地址与i行首地址在值上是相等的,但是两个是不同类型的东西,可以说行地址是行首地址的指针,而行首地址是元素的指针,所以行地址其实就是指针的指针。
一个a[m][n]的二维数组:
i行地址:a+i , &a[i]
i行首地址: a[i] , &a[i][0] , *(a+i)
i行j列元素地址:a[i]+j , &a[i][j] ,&a[i][0]+j , *(a+i)+j
i行i列元素:*(i行j列元素地址)
行地址--->行首地址--->行首元素
a表示的是行首地址也就是&a[0]