二级指针:
如果一个指针变量存放的又是另一个指针变量的地址,则称这个变量地址为指向指针的指针变量。
也称为“二级指针”
多级指针
一般有几个* 就好几级指针。
关于指针区分类型。
结论:定义什么类型的指针就应该指向什么类型的变量。
数组指针:
指向数组元素的指针
数组指针的作用:
使用数组指针间接访问数组的元素
数组指针的定义:
int *p;
数组指针的初始化:
int a[4]={1,2,3,4};
int *p = a;//数组指针,定义了一个指针变量p赋值数组的首地址(第一个元素的地址),p指向数组的第一个元素
int *p = &a[0]; //等价上面一句话
数组指针如何访问数组的元素:
1)p+1 表示指向数组的下一个元素
2)p-1 表示指向数组的上一个元素
补充:
引用一个数组元素,可用下面两种方法:
1)下标法,如 a[i];
2)指针法, 如*a[i] 或者 *(p+1);
3)a是常量(a++)是错误, p是变量 (p++)正确。
对于一个一维数组来说
int a[5];
1)获取a[i]的地址有几种方法
&a[i];
a+i;
int *p = a; p+i;
2) 获取a[i]的值有几种方法
a[i];
*(a+i);
*(p+i);
*(&a[i])
|