我对可能适用于几乎所有编程语言的条件语句感到困惑。例如这个 C++ 代码:
int main()
{
char *ptr, arr[]={'C','O','M','P','I','L','E','R','\0'};
ptr = arr;
*ptr = 'Z';
while(*ptr++)
cout << *(ptr-1);
return 0;
}
据我所知,条件语句仅在表达式为真时执行。所以在这种情况下,这部分:
while(*ptr++)
编译器认为除 NULL 之外的所有字符都为真。那么在这种情况下说只有 NULL 是假的意思吗?可以对字符执行此操作吗?:
if('x'){do something}