Istruzione if-else (C++)
Controlla la creazione di un ramo condizionale.
if ( expression )
statement1
[else
statement2]
Note
Se il valore di un'espressione è diverso da zero, viene eseguito statement1. Se il facoltativo else è presente, viene eseguito statement2 se il valore di un'espressione è zero. L'espressione deve essere di tipo aritmetico o di tipo puntatore, o deve essere di un tipo di classe che definisce una conversione non ambigua verso un tipo aritmetico o puntatore. (Per ulteriori informazioni sulle conversioni, vedere Conversioni standard.)
In entrambi i formati dell'istruzione if, l'espressione, che può avere qualsiasi valore eccetto una struttura, viene valutata, inclusi tutti gli effetti collaterali. Il controllo passa dall'istruzione if alla successiva istruzione del programma a meno che una delle istruzionicontenga un break, continue, o un goto.
La clausola else di un'istruzione if...else viene associata all'istruzione if precedente più vicina nello stesso scope che non ha una corrispondente istruzione else.
Perché l'esempio sia non ambiguo sull'accoppiamento if...else, rimuovere il commento dalle parentesi graffe.
Esempio
// if_else_statement.cpp
#include <stdio.h>
int main()
{
int x = 0;
if (x == 0)
{
printf_s("x is 0!\n");
}
else
{
printf_s("x is not 0!\n"); // this statement will not be executed
}
x = 1;
if (x == 0)
{
printf_s("x is 0!\n"); // this statement will not be executed
}
else
{
printf_s("x is not 0!\n");
}
return 0;
}