布爾運算符

來自ALSROBOT WiKi
跳轉(zhuǎn)至: 導航搜索

它們可用于if語句中的條件

&& (邏輯與)
只有在兩個操作數(shù)都為真時才返回真,例如:

if (digitalRead(2) == HIGH  && digitalRead(3) == HIGH) { // read two switches 
  // ...
} 

只在兩個輸入都為高時返回真


|| (邏輯或)
任意一個為真時返回真,例如:

if (x > 0 || y > 0) {
  // ...
} 

x或y任意一個大于0時返回真

! (非)
當操作數(shù)為假時返回真,例如:

if (!x) { 
  // ...
} 

若x為假返回真(即如果x等于0)


警告

確保你沒有把布爾與運算符,&&(兩個與符號)錯認為按位與運算符&(單個與符號)。它們是完全不同的概念。

同樣,不要混淆布爾或運算符||(雙豎杠)與按位或運算符|(單豎杠)。

按位取反~(波浪號)看起來與布爾非!有很大不同(感嘆號或程序員口中的“棒”),但是你仍然必須確保在什么地方用哪一個。


例如

 if (a >= 10 && a <= 20){}   // true if a is between 10 and 20