スポンサーリンク

if

スポンサーリンク
スポンサーリンク

説明

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に設定されますが、これも望ましい動作ではありません。

タイトルとURLをコピーしました