Structures de condition : l'instruction switch()
Syntaxe de l'instruction switch()
case <_valeur1_> : <_instruction1_>; <_instruction2_>; break; case <_valeur2_> : <_instruction3_>; case <_valeur3_> : case <_valeur4_> : <_instruction4_>; break; default : <_instruction5_>; }
L'opérateur switch est un branchement conditionnel. Il nous permet d'exécuter directement le code qui correspond à une valeur donnée par <expression>.
Nous pouvons exécuter une ou plusieurs instructions correspondant à chaque valeur possible, et nous devons utiliser le mot clé break pour signifier la fin de l'instruction ou du groupe d'instructions qui correspond à cette valeur.
Certains langages permettent de spécifier plusieurs valeurs possibles pour un même groupe d'instructions, comme nous le constatons ici avec <_valeur3_> et <_valeur4_>.
Le mot clé default marque le début des instructions à exécuter si aucun branchement ne correspond à <expression>. Certains langages permettent de ne pas spécifier le branchement default, alors que d'autres langages nous obligent à le spécifier même s'il ne contient aucune instruction.
Certains langages nous obligent aussi à terminer le branchement default par le mot clé break, alors que dans d'autres langages il est facultatif.
Le code correspondant en utilisant une structure conditionnelle if est le suivant :
<_instruction1_>; <_instruction2_>; <_instruction3_>; } <_instruction4_>; }else{ <_instruction5_>; }
Exemple avec l'instruction switch()
Code c (Utilisation de switch en C) (17 lignes)
#include <stdio.h> void main (void) { int i; switch (i) { } }
Version en cache
21/11/2024 09:56:23 Cette version de la page est en cache (à la date du 21/11/2024 09:56:23) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 19/03/2002, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/programmation-switch.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.