有关指针与二维数组的问题
这种理解是否正确?a[0]和*(a+0)等价的:
首先a[0]是数组a[]中的第一个确切的元素,也就是这个数组元素的值。而a+0中,a是数组名,可以表示数组的第一个元素的地址,a+0仍然是第一个地址没变,于是取这个地址的值*(a+0),就是a[0]了,其中前面加个*号表示“取值运算”。
再来看*(*(a+i)+j):首先在二维数组中a[i]表示数组中第i行的首地址,即*(a+i)表示第i行0列的地址(即元素a[i][0]的地址),于是(*(a+i)+j)就表示a[i][j]的地址了,再在前面加个*号,就是取a[i][j]的值了.