Switch en français

Introduction au switch en C

En langage C, l'instruction switch permet d'implémenter un ensemble d'options ou de conditions qui déclenchent l'exécution d'un bloc de code. Elle fonctionne de manière similaire à une structure if..else-if..else, mais se distingue par sa lisibilité accrue et sa simplicité d'utilisation. Il est important de noter que cet outil évalue une seule expression ou variable à la fois.

Syntaxe du switch

La syntaxe de l'instruction switch se présente comme suit :

switch(expression) {
  case value1:
    // Code à exécuter
    break;
  case value2:
    // Code à exécuter
    break;
  case value_n:
    // Code à exécuter
    break;
  default:
    // Code à exécuter
}

Voici le fonctionnement de cette instruction : 1. L'expression du switch est évaluée une seule fois. 2. La valeur de cette expression est comparée à celles définies dans chaque cas. Si une correspondance est trouvée, le code du bloc correspondant est exécuté. En l'absence de bloc de code dans un cas, l'exécution se poursuit jusqu'à trouver un cas actif. 3. Le mot-clé break sort du bloc switch et empêche l'évaluation de cas supplémentaires. 4. Le bloc sous default est exécuté si aucun cas ne correspond au résultat de l'expression. Ce bloc est optionnel et fonctionne comme le else dans une instruction if.

Il est essentiel que l'expression ou la variable ait une valeur de type intégral ou énuméré. Les types valides pour les expressions dans un switch-case incluent int, double, float et char.

Exemple 1 : Évaluation d'une variable

Voici un exemple qui affiche des messages à un étudiant selon sa note obtenue lors d'un test :

#include 
int main() {
    char note = 'B';
    switch(note) {
        case 'A':
            printf("Excellent !\n");
            break;
        case 'B':
        case 'C':
            printf("Bon travail !\n");
            break;
        case 'D':
            printf("Ça va, tu as réussi.\n");
            break;
        case 'F':
            printf("Mieux vaut réessayer...\n");
            break;
        default:
            printf("Note invalide !!!\n");
    }
    printf("Ta note est %c\n", note);
    return 0;
}

Ce code affichera :

Bon travail !
Ta note est B

Exemple 2 : Évaluation d'une expression

Cet exemple vérifie si l'addition de deux nombres donne un total de 4 ou 5 :

#include 
int main() {
    int nombre1 = 1;
    int nombre2 = 3;
    switch(nombre1 + nombre2) {
        case 5:
            printf("L'addition de %d et %d donne 5\n", nombre1, nombre2);
            break;
        case 4:
            printf("L'addition de %d et %d donne 4\n", nombre1, nombre2);
            break;
        default:
            printf("L'addition de %d et %d ne donne ni 4 ni 5\n", nombre1, nombre2);
    }
    return 0;
}

Ce morceau de code produira :

L'addition de 1 et 3 donne 4

Conclusion

Comme nous l'avons vu, l'instruction switch-case est un outil efficace pour évaluer non seulement des variables, mais également des expressions qui aboutissent à une valeur numérique.

Utilisation dans le développement web et les startups

L'instruction switch peut être un atout précieux lors de la création de sites web ou d'applications. Par exemple, elle peut être utilisée pour gérer les choix d'un utilisateur, comme la sélection de profils ou de réglages dans une application web. Cela peut également faciliter la gestion des erreurs en capturant différents codes d'état lorsqu'on interagit avec des API. Pour une startup, intégrer ce genre de logique peut améliorer l'expérience utilisateur et assurer un comportement solide de votre application.