1、野指针得概念::指针指向的位置不可知的(随机、不正确、没有明确限制的)
2、野指针生成的三种情况
1、指针未定义,就进行*p相关操作
2、指针越界访问,知道指向哪,但不是有效值
3、指针指向的空间释放(函数的变量作用范围在函数内,返回函数内定义的指针到主函数是无效的,已经被释放了)
3、野指针的危害
1、指向不可访问的地址 (段错误)
2、指向一个可用的,但是没有明确意义的空间(程序可以继续运行,掩盖程序上的错误)
3、指向一个可用的而且正在被使用的空间(对空间内容进行修改,会对程序的运行造成影响,因为变量不是我们想使用的那个值,通常这样程序会被崩溃或者数据被损坏)
4、如何规避野指针
1、指针初始化(如果没有就初始化为NULL)
2、小心指针越界
3、指针指向空间释放即置为NULL
4、指针使用之前检查有效性(例如:判断是否为NULL)
标签:危害,函数,指向,清除,程序,空间,NULL,指针 From: https://www.cnblogs.com/gunancheng/p/17453309.html