[Control Structures]
説明
if/else 文は、複数のテストをグループ化できるため、基本的な if 文よりもコードフローをより細かく制御できます。例えば、アナログ入力をテストし、入力値が 500 未満の場合はあるアクションを実行し、入力値が 500 以上の場合は別のアクションを実行するといったことが可能です。
例
if (pinFiveInput < 500)
{
// action A
}
else
{
// action B
}else は別の if テストに進むことができるため、複数の相互排他的テストを同時に実行できます。
各テストは、真となるテストに遭遇するまで、次のテストに進みます。真となるテストが見つかると、それに関連付けられたコードブロックが実行され、プログラムはif/else構文全体の次の行にスキップします。真となるテストがない場合、デフォルトのelseブロック(存在する場合)が実行され、デフォルトの動作が設定されます。
else if ブロックは、終了ブロック else の有無にかかわらず使用できます。また、その逆も可能です。このような else if 分岐は、無制限に使用できます。
if (pinFiveInput < 500)
{
// do Thing A
}
else if (pinFiveInput >= 1000)
{
// do Thing B
}
else
{
// do Thing C
}分岐や相互に排他的なテストを表現する別の方法は、switch case ステートメントを使用することです。
参照
- [Language] switch case
Language Reference Home
86Duinoリファレンスのテキストは、Arduinoリファレンスを改変したもので、Creative Commons Attribution-ShareAlike 3.0ライセンスに基づいてライセンスされています。リファレンス内のコードサンプルはパブリックドメインとして公開されています。