【发布时间】:2018-09-12 00:25:19
【问题描述】:
& 和 && 在 C 中的区别是什么?
我的老师给了我这个例子:
int a = 8;
int b = 4;
printf("a & b = %d\n", a & b);
printf("a && b = %d\n", a && b);
输出:
a & b = 0;
a && b = 1;
我不确定为什么这会在一种情况下返回 true 而在另一种情况下返回 false。
【问题讨论】:
-
&是位与,&&是逻辑与。 -
如果你没有找到这两个运算符的规范,你肯定需要提高你的搜索技巧!
-
@FredLarson 我知道的很多,但我只在(如果 y > 3 && x
-
@hyde C99 添加了
_Bool类型和stdbool.h类型定义为bool到_Bool -
我不认为它太宽泛了。这很容易回答。如果没有合适的重复,我们应该回答它。
标签: c bitwise-operators logical-operators