【指针的类型】
short* int* long* char* double* …
指针的类型决定了指针向前或向后一步的步长(距离),其步长对应类型的大小。
【指针的解引用】
指针类型决定了对指针解引用的时候有多大的权限(能操作几个字节)。比如char的指针解引用就只能访问1个字节,而int的指针解引用就能访问4个字节。
【野指针】
野指针就是指针指向的位置是不可知的(随机的、不正确的、没有明确限制的)。
野指针的原因
- 指针未初始化
- 指针访问越界
- 指针指向的空间被释放
【指针运算】
- 指针 +- 整数
- 指针 - 指针
- 指针关系的运算
【指针和数组】
指针用来存放数组的数组地址,可以通过指针来操作数组的元素。
【二级指针】
指针 指向指针指向的数组地址(如int** a…)。
【指针数组和数组指针】
指针数组:存放指针的数组
数组指针:指向数组地址