如何检查是否定义了const char*的值?

cod*_*rog 3 c c++

我的应用程序首先从conf文件中读取设置,然后可以从cli参数覆盖这些选项.在从conf加载设置之后,我需要检查是否设置了require值,但是我坚持要检查变量.

示例代码:

#include <stdio.h>

int main() {

const char* test;

if (test != NULL)
   std::cout << test << "\n";
else
   std::cout << "no value set\n";

return 0;
}
Run Code Online (Sandbox Code Playgroud)

我做错了什么?

Geo*_*che 7

你没有初始化test.如果你想要它NULL最初,你必须设置它:

const char* test = NULL;
Run Code Online (Sandbox Code Playgroud)

  • @code:不,你在这里有一个指向`const char`的指针.即使它是一个`const`指针(`const char*const`),你只能通过初始化它来设置它的值,并且无论如何都无法在以后修改它. (2认同)