山不在高,有仙则名。水不在深,有龙则灵。
----CSDN 时时三省
野指针
概念:野指针就是指针指向的位置是不可知的(随机的、不正确的、没有明确限制的)
指针成因
1.指针未初始化
p是一个局部的指针变量,局部变量不初始化的话,默认是随机值
*p属于非法访问内存了
这里的p就是一个野指针
2.越界访问
这个循环会循环11次 但是他只有10个数组 这个就属于越界访问
3.指针指向的空间释放
刚开始是你的 后面就被还给操作系统了就不属于你了 但是p还是会记得 再通过这个指针访问的时候就不行了
如何规避野指针
1 .指针初始化命
2 .小心指针越界
3 .指针指向空间释放及时置NULL
4 .指针使用之前检查有效性
指针运算
•指针+ -整数
•指针-指针
指针-指针得到的两个指针之间的元素个数
•指针的关系运算