< >
Home » Arduino语法参考 » Arduino语法-比较运算符

Arduino语法-比较运算符

语法列表

  • == 等于
  • != (不等于)
  • < (小于)
  • (大于)

  • <= (小于等于)
  • = (大于等于)


比较运算符说明

if(条件) and ==, !=, <, > (比较运算符)

if,用于和比较运算符联合使用,测试某一条件是否到达,例如一个输入超出某一数值。if条件测试的格式:

if (someVariable > 50)
{
  // do something here
}

该程序测试someVariable是否大于50。如果是, 程序执行特定的动作。换句话说,如果圆括号中的语句为真,花括号中的语句就会运行。否则,程序跳过该代码。

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)),这个是比较运算符,用于测试x是否等于10。后者只在x等于10时返回真,但是前者将总是为真。

这是因为C如下求值语句if(x=10):10分配给x(切记单个等号是赋值运算符),因此x现在为10。然后'if'条件求值10,其总是为真,由于任何非零数值都为真值。由此,if (x = 10)将总是求值为真,这不是使用if语句所期望的结果。另外,变量x将被设置为10,这也不是期望的操作。

if也可以是使用[if...else]的分支控制结构的一部分。

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: arduino语法, arduino比较运算符