在32位平台,任何类型的地址都是4字节。
类型
两个类型:指针变量自身类型以及所指向的类型
指针取值宽度:由指针变量指向的类型长度决定
指针跨度: 由指针变量指向的类型长度决定
强制转换
char* p;
(short*)p; 改变指针取值宽度和跨度
局部指针变量不初始化保存的是随机地址
void* 可以定义变量, void 不可以
void* 定义的变量叫万能指针,可以保存任何一级指针,但是 不能解引用,需要 转换类型
未初始化的指针不能解引用(引发段错误)
不要直接给指针变量赋值,不要越界操作
[]是*()的缩写
数组名 代表首元素地址, +1跳过一个元素
&数组名 代表数组的首地址,+1跳过整个数组
数组名和数组名地址相同,但类型不同
数组名是符号常量,不能被赋值