Arduino 日本語リファレンス


if

原文

if文は与えられた条件が満たされているかどうかをテストします。たとえば次のif文は、変数someVariableが50より大きいかをテストし、大きければ続く波カッコのなかの文を実行します。

if (someVariable > 50) {
  // 条件を満たしたとき実行される文
}

別の言い方をすると、カッコ内の条件がtrueのとき、波カッコ{}内の文が実行されます。
条件が満たされていない(trueでない)とき、波カッコ内の文は実行されず次の処理に移ります。

if文の後の波カッコは省略されることがあります。その場合はif文の次に置かれた1つの文だけが実行されます。以下の3つの書き方はどれも同じ動作です。

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

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

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

カッコ内の条件式では、1つあるいは複数の演算子(オペレータ)が使われます。

【演算子の例】

x == y (xとyは等しい)
x != y (xとyは等しくない)
x < y (xはyより小さい)
x > y (xはyより大きい)
x <= y (xはy以下)
x >= y (xはy以上)

【注意】

2つの等号(==)を書くはずのところで、誤って1つだけ(=)を書かないようにしましょう。たとえば、xが10に等しいかをテストしたいときは x == 10 と書きますが、そこで x = 10 と書いてしまうと、xの値に関わらずその式はtrueと判断されてしまいます。
1つだけの=は、xにyを代入するという意味です。if文においては、それだけでなく、代入した値が評価の結果となります。つまり、x = 10 は10であると見なされ、10はゼロではないので、trueと判断されます。



[目次へ戻る]

Creative Commons Attribution-ShareAlike 3.0 License.
このドキュメントはArduino Teamにより執筆され、Takumi Funadaが翻訳し、一部加筆修正したものです
ご意見はtf at musashinodenpa.comまでお送りください [Arduino wiki]