我在看一个例子,我看到了这个:
char *str;
/* ... */
if (!str || !*str) {
return str;
}
Run Code Online (Sandbox Code Playgroud)
这是否意味着它是空的还是什么?
str是一个char指针.!否定它.基本上,!str将评估为真(1)时str == NULL.
第二部分是,str如果第一个字符是空字符('\0'),则表示(如果指向某些内容)评估为true(1 ) - 这意味着它是一个空字符串.
注意:
*str取消引用指针并检索第一个字符.这和做的一样str[0].
| 归档时间: |
|
| 查看次数: |
1808 次 |
| 最近记录: |