Arduino中的逻辑与和或
逻辑与用 `&&` 运算符表示,逻辑或用 `||` 运算符表示。
语法
Expression1 && Expression2
或
Expression1 || Expression2
其中表达式1和表达式2计算结果为布尔值(真或假)。这些语句的输出由逻辑与和或的真值表决定。
与的真值表如下所示:
表达式1 | 表达式2 | 输出 |
---|---|---|
T | T | T |
F | T | F |
T | F | F |
F | F | F |
如您所见,两个表达式都必须为真,与语句才能输出真。
或的真值表如下所示:
表达式1 | 表达式2 | 输出 |
---|---|---|
T | T | T |
F | T | T |
T | F | T |
F | F | F |
如您所见,即使只有一个表达式为真,或语句也会输出真。
示例
以下示例演示了这些运算符的使用:
void setup() { // put your setup code here, to run once: Serial.begin(9600); Serial.println(); int x1 = 1; int x2 = 2; int x3 = 3; int x4 = 4; if((x1 > 2) && (x2 < 2)){ Serial.println("x1 is greater than 2 and x2 is less than 2"); } if((x1 == 2) || (x2 == 2)){ Serial.println("Either or both of x1 and x2 are equal to 2"); } if((x3 > 2) && (x4 > 2)){ Serial.println("x3 and x4 are both greater than 2"); } if((x3 < 2) || (x4 < 2)){ Serial.println("Either or both of x3 and x4 are less than 2"); } } void loop() { // put your main code here, to run repeatedly: }
输出
串口监视器输出:
在第一种情况下,两个表达式都为假,因此与的输出为假,什么也没有打印。
在第二种情况下,一个表达式为真,因此或表达式为真,并且打印了语句。
在第三种情况下,两个表达式都为真,因此与的输出为真,并且打印了语句。
在第四种情况下,两个表达式都为假,因此或的输出为假,什么也没有打印。
广告