比较运算符 - jimaobian/DFRobotWikiCn GitHub Wiki
if用于与比较运算符结合使用,测试是否已达到某些条件,例如一个输入值在某个特定范围之外。使用格式如下:
if (value > 50)
{
// 添加执行部分
}
该程序测试value是否大于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);
} // 都是正确的运算负
圆括号中要被计算的语句需要使用一个或多个操作符:
【比较运算符】
x == y (x 等于 y)
x != y (x 不等于 y)
x < y (x 小于 y)
x > y (x 大于 y)
x <= y (x 小于等于 y)
x >= y (x 大于等于 y)
警告:避免使用单等号(例如if(x = 10))。
单等号是赋值运算符,意思是设置x为数字10(换句话说,将值10存入变量x中)。改用双等号(例如if (x == 10)),这个是比较运算符,用于测试x是否等于10。后者只在x等于10时返回真,但是前者将总是为真。
这是因为,C语言是这样执行这句语句的if(x=10),如下:
10被分配给了x。 (切记:单等号是赋值运算符)
然后'if'条件求值10,其总是为真,由于任何非零数值都为真值。由此,*if(x = 10)*将总是求值为真,这不是使用if语句所期望的结果。这不是使用if语句所期望的结果。
if也可以是使用[http://wiki.dfrobot.com.cn/index.php/If...else if...else]的分支控制结构的一部分。
翻译自:Arduino Language Reference
更多建议,指正,或者文档分享欢迎进入DF创客社区