指针与二维数组
通过前面的学习,已知: int arr[3]={1,3,5}; arr[0] 可以用 *(arr+0) 表示 arr[1] 可以用 *(arr+1) 表示 arr[2] 可以用 *(arr+2) 表示 现有二维数组如下: int arr[3][4]= { {1,2,3,4}, {5,6,7,8}, {9,10,11,12} }; 则: arr[0] ~~~ *(arr+0) arr[1] ~~~ *(arr+1) arr[2] ~~~ *(arr+2) 此处arr[0]即*(arr+0)是二维数组arr的第一个元素的值,该值是内层数组{1,2,3,4}的起始地址. 将arr[0]赋值给 temp数组 int temp0[4] = arr[0]; int temp1[4] = arr[1]; int temp2[4] = arr[2]; 获取最终的值: arr[0][0] ~~~~ 将arr[0]换为上边的temp0数组 arr[0][0] ~~~~ temp0[0] ~~~~ *(temp+0) ~~~~ *(*(arr+0)+0) arr[0][1] ~~~~ temp0[1] ~~~~ *(temp+1) ~~~~ *(*(arr+0)+1) arr[0][2] ~~~~ temp0[2] ~~~~ *(temp+2) ~~~~ *(*(arr+0)+2) arr[0][3] ~~~~ temp0[3] ~~~~ *(temp+3) ~~~~ *(*(arr+0)+3) arr[1][0] ~~~~ 将arr[1]换为上边的temp1数组...