C++ 中的 NULL 未声明错误
本文将讨论C++中NULL关键字以及未声明NULL的错误。
C+ 中的 NULL 关键字
NULL是C++中的常量,用于将指针变量初始化为0。NULL和0可以互换使用。
当您声明一个指针并且没有要保存在该指针中的确切地址时,分配 NULL 是一个好习惯。 因此,除非它指向某个其他值,否则它被称为空指针。
句法:
DataType *PointerName = NULL;
在某些情况下,使用 NULL 关键字时会出现如下错误:
int main() {
int* p = NULL;
return 0;
}
输出:
现在,我们来讨论一下如何解决这个错误。
包括相关的预定义标头
NULL 关键字在不同的头文件(如 iostream、stdio 或 cstddef)中声明为常量。 您可以包含其中任何一个来解决此错误。
#include<iostream>
int main() {
int* p = NULL;
return 0;
}
上面的代码执行没有错误,因为 iostream 中也定义了 NULL。
将 NULL 定义为常量
您可以在代码中定义一个名为 NULL 的常量。
#define NULL 0
int main() {
int* p = NULL;
return 0;
}
使用 0 代替 NULL
使用 0 而不是 NULL。 两者具有相同的含义。
int main() {
int* p = NULL;
return 0;
}
使用 nullptr 而不是 NULL
在 C++ 11 等现代版本的 C++ 中,nullptr 可以用作 NULL 关键字的替代品。
int main() {
int* p = nullptr;
return 0;
}
相关文章
Arduino 复位
发布时间:2024/03/13 浏览次数:315 分类:C++
-
可以通过使用复位按钮,Softwarereset 库和 Adafruit SleepyDog 库来复位 Arduino。
Arduino 的字符转换为整型
发布时间:2024/03/13 浏览次数:181 分类:C++
-
可以使用简单的方法 toInt()函数和 Serial.parseInt()函数将 char 转换为 int。
Arduino 串口打印多个变量
发布时间:2024/03/13 浏览次数:381 分类:C++
-
可以使用 Serial.print()和 Serial.println()函数在串口监视器上显示变量值。