if...else ステートメント
更新 : 2007 年 11 月
条件式の値を評価し、条件に応じて適切なステートメントを実行します。
if (condition)
statement1
[else
statement2]
引数
condition
必ず指定します。ブール式を指定します。この式が NULL または undefined の場合は、偽 (false) となります。statement1
必ず指定します。condition が真 (true) の場合に実行するステートメントを指定します。複合ステートメントを指定することもできます。statement2
省略可能です。condition が偽 (false) の場合に実行するステートメントを指定します。複合ステートメントを指定することもできます。
解説
statement1 および statement2 に対し、必ず中かっこ ( { } ) で囲む習慣を付けておくと、コードが読みやすくなり、不注意によるエラーも減らすことができます。
使用例
たとえば、次のコード例のような場合、最初の if ステートメントに対して else を使用しているつもりでいても、実際には else は 2 つ目の if ステートメントに使用されます。
if (x == 5)
if (y == 6)
z = 17;
else
z = 20;
次のコード例のように書き換えると、あいまいさを排除できます。
if (x == 5)
{
if (y == 6)
z = 17;
}
else
z = 20;
また、statement1 へステートメントを単純に追加する場合でも、次のコード例のように、ステートメントだけ追加して中かっこを記述し忘れると、エラーが発生します。
if (x == 5)
z = 7;
q = 42;
else
z = 19;
この場合は、if ステートメントと else ステートメントの間に複数のステートメントが記述されているため、構文エラーになります。if と else の間のステートメントを必ず中かっこで囲む必要があります。