操作符顺序问题
这一行代码的行为是啥?
char *cp="Hello World";
while(cp&&*cp)
[解决办法]
判断指针不为空,且指针指向的内容不为空
感觉多此一举,指针要为空,你还怎么赋值?
[解决办法]
cp&&*cp是说 字符串地址不为空 字符串长度不为空
inline bool isEmptyString(char* cp){ return cp&&*cp;}char *cp="Hello World";while (isEmptyString(cp))
[解决办法]
楼上正解。
可以直接用while(*cp)。
一般用来计算cp指向的字符串长度。