位操作运算与逻辑运算操作的区别

按位运算符进行逐位的逻辑运算(如:与或非),输出与输入位数一致;
逻辑运算符进行逻辑运算,不关注输入的某一位而是将输入作为整体进行逻辑操作,输出位数为1或0;

位与

位与的符号是" & "
位与符号是一个 & ,两个 && 是逻辑与。

位或

位或的符号是"|"
位或符号是一个" | “,两个” || "是逻辑或。

位取反

位取反的符号是" ~"
C语言中位取反是" ~ “,C语言中的逻辑取反是” ! "。

位异或

它的符号是"^",相同为0.相异为1

位与、位或、位异或的特点总结

		任何数与1		任何数与0
位与(&)		无变化		变为0
位或(|)		变为1		无变化
位异或(^)	取反		无变化

更多推荐

C语言中的位操作、与、或、非、异或