数组指针
▶ 指向数组元素的指针变量的定义和赋值
int main(){
int arr[3];
arr[0]=0; arr[1]=1; arr[2]=2;
// 定义一个指针变量 *p
int *p1;
p1 = &arr[0]; // 这等价于 p = arr;
// 数组名等于是数组的首地址
int *p2 = arr;
}
数组名等于数组的首地址。
int *p;
p = arr[0] 或 p = arr;
定义指针时候也可以为指针变量赋值。
int *p = arr; 或 int *p = &a[0];
▶ 通过指针引用数组元素
// 定义一个指针变量 *p
int *p1;
p1 = &arr[0]; // p1 指向了 arr[1]
printf("%d\n",*p1);
p1 = p1+1; // 此时 p1 指向了 arr[2]
printf("%d\n",*p1);
▷ 引用数组元素的方式
应用数组元素的方式有很多。
*(p+3) = 18;
将 18 赋值给了 arr[3] 。
p[i] 这种表示是 *(p+i) 这种表示
多种方式:
a[i]; p[i]; *(p+1); *(a+i);

浙公网安备 33010602011771号