Lorsque le choix entre divers traitements dépend de la valeur d'une seule expression, on peut utiliser la structure :
L'EXPRESSION est tout d'abord évaluée. Le fonctionnement est le suivant : si la valeur de l'EXPRESSION est égale à la CONSTANTE1, alors la LISTE_INSTRUCTIONS1 est exécutée. Sinon, si la valeur de l'EXPRESSION est égale à la CONSTANTE2, alors la LISTE_INSTRUCTIONS2 est exécutée, etc. Si la valeur de l'EXPRESSION n'est égale à aucune des constantes, alors la LISTE_INSTRUCTIONSn+1 est exécutée.
Remarque :
notez le break à la fin de chaque instruction, sauf la
dernière. Il sert à ``sauter'' l'évaluation des cas suivants,
lorsqu'une comparaison a réussi. L'exécution reprend alors après
l'accolade fermante du switch
.
Si une même instruction doit être exécutée pour différentes
valeurs de constantes, on peut utiliser dans le switch
la forme :