我想检查char*是否指向有效的字符串...我可以检查这个变量吗...
char* c;
Run Code Online (Sandbox Code Playgroud)
我尝试了什么:
if(c == NULL) //c is not null
if(*c == '\0') //false
if(strlen(c) == 0) //exception
Run Code Online (Sandbox Code Playgroud)
我认为不能在未分配时检查char*并且不指向有效的字符串...
事实是,你无法确定指针是否有效.测试NULL可能会让您确定它是无效的,但它不保证任何有效性.这是在C++中不使用这种东西的一个原因.一个std::string是始终处于有效状态.