次の方法で共有


if ステートメント (C)

if ステートメントは、条件分岐を制御します。 式の値が 0 以外の場合、 if ステートメントの本体が実行されます。 if ステートメントの構文には、2 つの形式があります。

構文

selection-statement:
if ( expression ) statement
if ( expression ) statement else statement

if ステートメントの両方の形式で、構造体を除く任意の値を持つ式が、すべての副作用を含めて評価されます。

構文の最初の形式では、 expression が true (0 以外) の場合、 statement が実行されます。 expressionが false の場合、statementは無視されます。 elseを使用する 2 番目の形式の構文では、expressionが false の場合、2 番目のstatementが実行されます。 どちらの形式でも、 if ステートメントからプログラム内の次のステートメントに制御が渡されます。ただし、いずれかのステートメントに breakcontinue、または gotoが含まれている場合を除きます。

if ステートメントの例を次に示します。

if ( i > 0 )
    y = x / i;
else
{
    x = i;
    y = f( x );
}

この例では、iが 0 より大きい場合、ステートメント y = x/i;が実行されます。 iが 0 以下の場合、ixに割り当てられ、f( x )yに割り当てられます。 if句を形成するステートメントはセミコロンで終わります。

ステートメントとelseif入れ子にする場合は、中かっこを使用してステートメントと句を複合ステートメントにグループ化し、意図を明確にします。 中かっこが存在しない場合、コンパイラは、各elseを、elseがない最も近いifに関連付けることであいまいさを解決します。

if ( i > 0 )           /* Without braces */
    if ( j > i )
        x = j;
    else
        x = i;

else句は、この例の内部ifステートメントに関連付けられています。 iが 0 以下の場合、xに値は割り当てされません。

if ( i > 0 )
{                      /* With braces */
    if ( j > i )
        x = j;
}
else
    x = i;

この例の内部if ステートメントを囲む中かっこは、外側の if ステートメントの一部else句にします。 iが 0 以下の場合、ix に割り当てられます。

こちらも参照ください

if-else ステートメント (C++)