数组指针是指向一个数组的指针, 比如
int a[3] = {0, 1, 2};
int *p = a;
p 就是指向数组a的指针, 可以使用 p 来访问数组 a 中的值, 比如修改数组元素 *p = 10; 或者访问数组元素 printf("%d", *(p+1));
指针数组是装指针的数组, 比如
int x = 10, y = 20, z = 30;
int *p[3] = {&x, &y, &z};
这个 p 就是一个指针数组, 它的每一个元素 p[0] p[1] p[2] 都是一个 int 指针。 可以修改指针元素指向的地址, 比如 p[0] = &y; 可以通过指针来访问或修改指向的变量的值, 比如 *p[1] = -20;
|