学科分类
目录
C++基础

空指针常量

在定义指针变量时,通常都会进行变量初始化,防止使用野指针引起程序异常。若定义变量时,指针值无法确定则将变量初始化为0值。可以通过以下几个方法实现:

int *p1 = NULL;
int *p2 = 0;
int *p3 = nullptr;

在C语言中常用的是第一种,将指针值设置为NULL,它是一个宏定义,类型为void *,数值为0。第二种方法是使用数值0对指针进行初始化,类型上有差别。第三种方法是将nullptr的值存入指针,这是C++11新标准引入的方法。

关键字nullptr是std::nullptr_t类型的值,用来指代空指针。nullptr和任何指针类型以及类成员指针类型的空值之间可以发生隐式类型转换,同样也可以隐式转换为bool型(取值为false),但是不存在到整型的隐式类型转换。

点击此处
隐藏目录