我知道在将 char 指针与某个 char 值进行比较时,您需要在指针前面加上 *
,但我在一些代码中发现了如下比较:
char* c;
// ...
while (*c != ']' && *c != '\0') // search for some character
{
c++;
}
if (c == '\0')
{
return -1; // error
}
所以,我的问题是:这是错误还是特殊情况?那里不应该有 if (*c == '\0')
吗?
最佳答案
你是对的。
c == '\0'
检查指针本身是否等于 0,而不是指针指向的字符。
关于c++ - 将指针与字符串的字符结尾进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36592089/