1、未初始化的指针
指针未初始化前相当于一个 ‘野指针’,它所指向的内存空间是随机的,这就很有可能存在该指针和其他程序占用相同内存空间的情况,导致其他程序可能不能正常运行,极大的增加了出错的概率。
2、指针初始化
强指针变量置空。初始化为NULL,使它不指向任何内容,这样引用它就也不会出现上面的问题。
3、空指针
与任何对象或函数的指针值都不相等,它表示 “未分配” 或者 “尚未指向任何地方” 的指针。
4、主要区别:
在概念上,空指针不同于未初始化的指针。
空指针可以确保不指向任何对象或函数,而未初始化指针却可能指向任意位置。