指针和数组关系
(1)指针保存着数组的首地址
调用方式:指针偏移/下标访问
例:
下标访问
倒序输出 hello
由于是 保存首地址的形式 因此 char d = &a[0] 等效于 char d=a
int main() {
char a[10] = "hello";
char* d = &a[0]; //等效于char *d=a;
//cout << d;
for (int i = 4; i >= 0; i--) {
cout << d[i];
// cout << "循环";
}
}
地址访问
char a[10] = "hello";
char* d = &a[0];
d = d + 4; // d 等效于 a[4]地址
for (int i = 1; i <= 5; i++) {
cout << *d;
d = d - 1;
}
输出结果:
区分:
cout<<d 和 cout<<*d
直接输出d会输出所有元素 (多个)
*d会输出d指向地址的值(单个)