在C系语言中| 、&、||、&&是最常见的操作符,但还是有很多程序员用不好。
| 算数或,结果为运算后的值,对两边的值进行位运算,参与位运算的两个值只要有一个为1运算结果就为1。
例如: 3 | 5 = 7 0011 --------3
0101 --------5
---------------------
0111 -------7
& 算数与,结果为运算后的值,对两边的值进行位运算,参与位运算的两个值都为1时运算结果才为1。
例如: 3 & 5 = 1 0011 --------3
0101 --------5
---------------------
0001 -------1
|| 逻辑或,结果为true或false,只要表达式一边为真结果就为真,两边都为假结果才为假 。
x = false, y = false x | | y = false
x = false, y = true x | | y = true
x = true, y = false x | | y = true
x = true, y = true x | | y = true
&& 逻辑与,结果为true或false, 表达式两边都为真结果才为真,只要有一边表达式为假结果就为假。
x = false, y = false x && y = false
x = false, y = true x && y = false
x = true, y = false x && y = false
x = true, y = true x && y = true