説明
if文はある条件を確認し、その条件が「真」であれば、次の文を実行します。
構文
if (condition) { //statement(s) }
condition: 真偽値(trueまたはfalse)を指定します。
プログラム例
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
注意と警告
括弧内で評価される文には、以下のような1つ以上の演算子を使用する必要があります。
【比較演算子】
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に設定します(変数xに値10を入れます)。代わりに二重の等号を使います(例:if (x == 10) )。これは比較演算子で、xが10に等しいかどうかをテストします。後者のステートメントは、xが10に等しい場合にのみ真となりますが、前者のステートメントは常に真となります。
これは、C++がif (x=10)という文を次のように評価するためです。初めに10がxに代入され(=は単純代入演算子である)ます。この為、xには10が入ります。その結果、if (x = 10) は常に TRUE と評価されますが、これは if 文を使用する際の望ましい結果ではありません。さらに、変数xは10に設定されますが、これも望ましい動作ではありません。