Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Příkaz if
řídí podmíněné větvení. Tělo if
příkazu se provede, pokud je hodnota výrazu nenulová. Syntaxe příkazu if
má dvě formy.
Syntaxe
selection-statement
:
if (
expression
)
statement
if (
expression
)
statement
else
statement
V obou formách if
příkazu se vyhodnocují výrazy, které můžou mít libovolnou hodnotu kromě struktury, včetně všech vedlejších účinků.
V první podobě syntaxe, pokud expression
je true (nenulové), statement
se spustí. Pokud expression
je false, statement
bude ignorován. Ve druhé formě syntaxe, která používá else
, druhý statement
se provede, pokud expression
je false. V obou formách pak ovládací prvek předá z if
příkazu do dalšího příkazu v programu, pokud některý z příkazů neobsahuje , break
continue
nebo goto
.
Tady jsou příklady if
příkazu:
if ( i > 0 )
y = x / i;
else
{
x = i;
y = f( x );
}
V tomto příkladu se příkaz y = x/i;
spustí, pokud i
je větší než 0. Je-li i
menší nebo rovna 0, i
je přiřazena x
a f( x )
je přiřazena y
. Příkaz tvořící klauzuli if
končí středníkem.
Při vnořování if
příkazů a else
klauzulí použijte složené závorky k seskupení příkazů a klauzulí do složených příkazů, které vysvětlují váš záměr. Pokud nejsou k dispozici žádné složené závorky, kompilátor vyřeší nejednoznačnosti tím, že je else
přidružuje k nejbližšímu if
, který nemá else
.
if ( i > 0 ) /* Without braces */
if ( j > i )
x = j;
else
x = i;
Klauzule else
je přidružena k vnitřnímu if
příkazu v tomto příkladu. Pokud i
je menší nebo rovna 0, není přiřazena x
žádná hodnota .
if ( i > 0 )
{ /* With braces */
if ( j > i )
x = j;
}
else
x = i;
Složené závorky kolem vnitřního if
příkazu v tomto příkladu tvoří else
část klauzule vnějšího if
příkazu. Je-li i
menší nebo rovna 0, i
je přiřazena .x