文章目录
- 空指针
- 1. 什么是空指针
- 2. 空指针的表示
- 3. 什么时候使用空指针
- 4. 代码示例
空指针
1. 什么是空指针
空指针是一个特殊的指针,也是一个对任何指针类型都合法的指针,指针变量具有空指针值,表示它处于闲置状态,没有指向任何有意义的内容
2. 空指针的表示
标准库定义了一个与数值0等价的符号常量NULL,程序中可以写ptr = 0 或者ptr = nullptr;两种写法都是表示ptr指针为空指针,C语言保证这个值不会是任何对象的地址
3. 什么时候使用空指针
如果定义指针时,未将指针指向特定的对象,应该将指针置空; int * ptr = NULL;
使用free或者delete指针后,应该将指针置空,避免野指针的产生;delete *ptr ; ptr = NULL;
4. 代码示例
#include <>
int main(){
int n = 3;
int * int_ptr = NULL;
void * void_ptr = NULL;
void_ptr = &n;
int_ptr = (int *)void_ptr;
printf("%d\n", *(int_ptr));
return 0;
}