怎么理解数组指针?
指向数组的指针
既然指针变量指向了数组 那可以认为 这个指针变量 == 数组名
结论: 引用一个数组元素,可用下面两种方法: (1)下标法,如a形式 (2)指针法,如*(a+i)或*(p+i) (3)a是常量(a++错误),p是变量(p++正确)
数组指针 指向数组的指针 = 数组名
int arr[3] = {1,2,3};
for(int i = 0;i<3;j++){ *(arr+i) == arr } //定义一个数组指针 int *p = arr; for(int i = 0;i<3;j++){ *(p+i) //指针法 *p++ p; &arr//下标法 } //-----------------------二维数组指针 二维数组指针 指针 指向的是二维数组的首地址 int arr[2][3] = {1,2,3,4,5,6}; 怎么理解二维数组指针 指向二维数组的指针变量 数据类型 (*指针变量名)[二维数组列数]; int a[2][3] = {1,2,3,4,5,6}; int (*pa)[3] = a; *(*(pa+i)+j) == *(*(a+i)+j) == *(a+j) == pa[j]
|