布尔运算符可用于if语句中的条件

&& (逻辑与) 只有在两个操作数都为真,返回值为真,运行if中的语句。例如:

if (digitalRead(2) == HIGH  && digitalRead(3) == HIGH) { // 读取两个按键值
  // ...
}

只有在两个输入值都为高时,返回值为真。

|| (逻辑或) 任意一个为真,返回值为真,运行if中的语句。例如:

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

x或y任意一个大于0,返回值为真

! (非) 当操作数为假时,返回值为真,运行if中的语句。例如:

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

若x为假时,返回值为真。(即如果x=0)

【警告】

  1. 希望你没有把与(&&)按位与(&)混淆。它们是完全不同的两个概念。

  2. 不要搞错或(||)按位或(|)

  3. 按位取反(~)看起来和非(!)有很大不同,但是使用的时候也还是想清楚该怎么用。

【示例】

 if (a >= 10 && a <= 20){}   //判断a是否在10和20之间

【更多可见】 按位与(&) 按位或(|) 按位非(~) 比较运算符

翻译自:Arduino Language Reference

<File:nextredirectltr.png>返回Arduino语法手册首页

<File:nextredirectltr.png>更多建议,指正,或者文档分享欢迎进入DF创客社区