当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Arduino if用法及代码示例


【控制结构】

说明

if 语句检查条件并在条件为'true' 时执行以下语句或语句集。

用法

if (condition) {
  //statement(s)
}

参数

condition :布尔表达式(即,可以是 truefalse )。

示例代码

if 语句后的括号可以省略。如果这样做,下一行(由分号定义)成为唯一的条件语句。

if (x > 120) digitalWrite(LEDpin, HIGH);

if (x > 120)
digitalWrite(LEDpin, HIGH);

if (x > 120) {digitalWrite(LEDpin, HIGH);}

if (x > 120) {
  digitalWrite(LEDpin1, HIGH);
  digitalWrite(LEDpin2, HIGH);
}
// all are correct

注意事项和警告

在括号内评估的语句需要使用一个或多个运算符,如下所示。

比较运算符:

x == y (x is equal to y)
x != y (x is not equal to y)
x <  y (x is less than y)
x >  y (x is greater than y)
x <= y (x is less than or equal to y)
x >= y (x is greater than or equal to y)

谨防意外使用单个等号(例如 if (x = 10) )。单个等号是赋值运算符,并将 x 设置为 10(将值 10 放入变量 x )。而是使用双等号(例如 if (x == 10) ),这是比较运算符,并测试 whether x 是否等于 10。仅当x 等于 10 时,后一个语句才为真,但前一个语句始终为真。

这是因为 C++ 对语句 if (x=10) 的求值如下: 10 被分配给 x(记住单个等号是 (assignment operator )),所以 x 现在包含 10。那么 'if' 有条件评估 10,它总是评估为 TRUE ,因为任何非零数字评估为 TRUE。因此,if (x = 10) 将始终评估为 TRUE ,这不是使用 'if' 语句时所需的结果。此外,变量x 将设置为 10,这也不是所需的操作。

相关用法


注:本文由纯净天空筛选整理自arduino.cc大神的英文原创作品 if。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。