Dela via


if Instruktion (C)

Instruktionen if styr villkorsstyrd förgrening. Brödtexten i en if -instruktion körs om värdet för uttrycket inte ärzero. Syntaxen för -instruktionen if har två formulär.

Syntax

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

I båda formerna av -instruktionen if utvärderas uttrycken, som kan ha valfritt värde utom en struktur, inklusive alla biverkningar.

I den första formen av syntaxen körs if expression is true (nonzero). statement Om expression är falskt statement ignoreras. I den andra formen av syntax, som använder else, körs den andra statement om expression är false. Med båda formulären skickar kontrollen sedan från -instruktionen if till nästa -instruktion i programmet om inte någon av -uttrycken innehåller en break, continueeller goto.

Följande är exempel på -instruktionen if :

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

I det här exemplet körs -instruktionen y = x/i; om i är större än 0. Om i är mindre än eller lika med 0 i , tilldelas till xoch f( x ) tilldelas till y. Instruktionen if som bildar -satsen slutar med ett semikolon.

När du kapslar if in instruktioner och else satser använder du klammerparenteser för att gruppera instruktioner och satser i sammansatta instruktioner som klargör din avsikt. Om det inte finns några klammerparenteser löser kompilatorn tvetydigheter genom att associera var else och en med det närmaste if som saknar en else.

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

Satsen else är associerad med den inre if instruktionen i det här exemplet. Om i är mindre än eller lika med 0 tilldelas inget värde till x.

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

Klammerparenteserna som omger den inre if instruktionen else i det här exemplet gör satsen till en del av den yttre if instruktionen. Om i är mindre än eller lika med 0 i tilldelas till x.

Se även

if-else-instruktion (C++)