首先,指针是一个地址。
数组指针:数组的开始地址
数组元素的指针:数组元素的地址
定义
int a[3];
a[0] = 1; a[1] = 2; a[2] = 3;
int *p = &a[0]; //指针p 指向数组第0号元素
引用
在此, p 指向数组首元素 a[0]
*p = 10; // a[0] = 10
p = p + 1; // 增加了4个字节长度,因为数组存放的是整型变量
// p + i 和 a + i 都是地址
p = p + 2;
*p = 20; // a[2] = 20
p = a + 2;
*p = 20; // a[2] = 20
*(p + i); //或者 *(a + i);
*(p + 1) = 30; // a[1] = 30
//p[i] 和 *(p + i) 和 a[i] 等价
*p++; //先用后加 相当于 a[0]
*++p; //先加后用 相当于 a[1]
(*p)++; // 等价于 a[0]++ ,也就是数组元素 +1
本文介绍了数组指针的概念,如数组的开始地址和数组元素的地址。通过示例展示了如何定义和使用指针,如`int*p=&a[0];`,以及指针操作如`p=p+1`和`*p++`在数组中的影响,强调了指针与数组元素之间的关系及其在访问和修改数组元素时的作用。
529

被折叠的 条评论
为什么被折叠?



