Udostępnij za pośrednictwem


if Instrukcja (C)

Instrukcja if kontroluje rozgałęzianie warunkowe. Treść instrukcji if jest wykonywana, jeśli wartość wyrażenia jest niezerowa. Składnia instrukcji if ma dwie formy.

Składnia

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

W obu formach instrukcji if wyrażenia, które mogą mieć dowolną wartość z wyjątkiem struktury, są oceniane, w tym wszystkie skutki uboczne.

W pierwszej formie składni jest expression wykonywana wartość true (nonzero). statement Jeśli expression wartość ma wartość false, statement jest ignorowana. W drugiej formie składni, która używa elsemetody , drugi statement jest wykonywany, jeśli expression ma wartość false. W obu formularzach kontrolka następnie przekazuje instrukcję if z instrukcji do następnej instrukcji w programie, chyba że jedna z instrukcji zawiera breakcontinue, lub goto.

Poniżej przedstawiono przykłady instrukcji if :

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

W tym przykładzie instrukcja y = x/i; jest wykonywana, jeśli i jest większa niż 0. Jeśli i wartość jest mniejsza lub równa 0, i jest przypisana do xelementu i f( x ) jest przypisana do yelementu . Instrukcja tworząca klauzulę if kończy się średnikiem.

Podczas zagnieżdżania if instrukcji i else klauzul użyj nawiasów klamrowych, aby pogrupować instrukcje i klauzule złożone, które wyjaśniają intencję. Jeśli nie ma nawiasów klamrowych, kompilator rozwiązuje niejednoznaczności, kojarząc każdy else z najbliższymi if elementami, które nie mają elementu else.

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

Klauzula else jest skojarzona z instrukcją wewnętrzną if w tym przykładzie. Jeśli i wartość jest mniejsza lub równa 0, żadna wartość nie jest przypisana do x.

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

Nawiasy klamrowe otaczające instrukcję wewnętrzną if w tym przykładzie sprawiają, że klauzula else jest częścią instrukcji zewnętrznej if . Jeśli i wartość jest mniejsza lub równa 0, i jest przypisana do elementu x.

Zobacz też

if-else, instrukcja (C++)