布爾運(yùn)算符
來自ALSROBOT WiKi
它們可用于if語句中的條件
&& (邏輯與)
只有在兩個(gè)操作數(shù)都為真時(shí)才返回真,例如:
if (digitalRead(2) == HIGH && digitalRead(3) == HIGH) { // read two switches // ... }
只在兩個(gè)輸入都為高時(shí)返回真
|| (邏輯或)
任意一個(gè)為真時(shí)返回真,例如:
if (x > 0 || y > 0) { // ... }
x或y任意一個(gè)大于0時(shí)返回真
! (非)
當(dāng)操作數(shù)為假時(shí)返回真,例如:
if (!x) { // ... }
若x為假返回真(即如果x等于0)
警告
確保你沒有把布爾與運(yùn)算符,&&(兩個(gè)與符號(hào))錯(cuò)認(rèn)為按位與運(yùn)算符&(單個(gè)與符號(hào))。它們是完全不同的概念。
同樣,不要混淆布爾或運(yùn)算符||(雙豎杠)與按位或運(yùn)算符|(單豎杠)。
按位取反~(波浪號(hào))看起來與布爾非!有很大不同(感嘆號(hào)或程序員口中的“棒”),但是你仍然必須確保在什么地方用哪一個(gè)。
例如
if (a >= 10 && a <= 20){} // true if a is between 10 and 20