Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

Switch-Case in C verstehen: Syntax, Beispiele und Best Practices

Was ist die Switch-Anweisung in C?

Der switch-Konstrukt wertet einen einzelnen Ausdruck aus und leitet den Programmfluss zum passenden case-Label. Wenn keine Übereinstimmung gefunden wird, läuft der optionale default-Block. Dieses Entscheidungsinstrument ist besonders nützlich bei der Behandlung diskreter, konstanter Werte wie Menüoptionen, Fehlercodes oder Benutzerauswahlen.

Jedes case wird durch einen konstanten Ausdruck eindeutig identifiziert. Wenn der Wert des Ausdrucks mit einem Case-Label übereinstimmt, wird der entsprechende Anweisungsblock ausgeführt, und die Ausführung verlässt den switch (es sei denn, ein break wird weggelassen, was Fall-through verursacht).

Switch-Case Syntax

switch (expression) {
    case constant1:
        // statements
        break;
    case constant2:
        // statements
        break;
    // …
    default:
        // statements
        break;
}
// Anweisungen nach dem switch

Wie die Switch-Anweisung funktioniert

Das folgende Flussdiagramm veranschaulicht den Entscheidungsprozess für eine Switch-Anweisung:

Switch-Case in C verstehen: Syntax, Beispiele und Best Practices

Beispiel 1: Basis Switch

#include <stdio.h>
int main() {
    int num = 8;
    switch (num) {
        case 7: printf("Value is 7"); break;
        case 8: printf("Value is 8"); break;
        case 9: printf("Value is 9"); break;
        default: printf("Out of range"); break;
    }
    return 0;
}

Ausgabe:

Value is 8

Beispiel 2: Default verwenden

#include <stdio.h>
int main() {
    int language = 10;
    switch (language) {
        case 1: printf("C#\n"); break;
        case 2: printf("C\n"); break;
        case 3: printf("C++\n"); break;
        default: printf("Other programming language\n");
    }
    return 0;
}

Ausgabe:

Other programming language

Beispiel 3: Kombinierte Cases

#include <stdio.h>
int main() {
    int number = 5;
    switch (number) {
        case 1:
        case 2:
        case 3: printf("One, Two, or Three.\n"); break;
        case 4:
        case 5:
        case 6: printf("Four, Five, or Six.\n"); break;
        default: printf("Greater than Six.\n");
    }
    return 0;
}

Ausgabe:

Four, Five, or Six.

Verschachtelte Switches

Switches können verschachtelt werden, was hierarchische Entscheidungsfindung ermöglicht. Das folgende Beispiel demonstriert einen einfachen Authentifizierungsfluss:

#include <stdio.h>
int main() {
    int ID, password;
    printf("Please Enter Your ID:\n");
    scanf("%d", &ID);
    switch (ID) {
        case 500:
            printf("Enter your password:\n");
            scanf("%d", &password);
            switch (password) {
                case 0: printf("Welcome Dear Programmer\n"); break;
                default: printf("Incorrect password\n");
            }
            break;
        default: printf("Incorrect ID\n");
    }
    return 0;
}

AUSGABE:

 Please Enter Your ID: 500
Enter your password: 000
Welcome Dear Programmer
Switch-Case in C verstehen: Syntax, Beispiele und Best Practices

Warum Switch umfangreichen If-Else-Ketten vorzuziehen ist

Während if-else-Ketten dieselbe Logik erreichen können, werden sie unhandlich, wenn die Optionen zunehmen. Switch-Statements bieten klarere Syntax, bessere Lesbarkeit und können vom Compiler in Sprungtabellen für konstante Ausdrücke optimiert werden.

Regeln für die Verwendung von Switch

Wichtigste Erkenntnisse

C Sprache

  1. C# Switch Statement meistern: Syntax, Beispiele & Best Practices
  2. C++ do‑while‑Schleife: Syntax, Praxisbeispiele und verschachtelte Schleifen
  3. C++ switch‑case meistern: Syntax, Einsatz und Praxisbeispiele
  4. C++ Zeiger meistern: Konzepte, Beispiele & praktische Anwendungen
  5. C++ Operator‑Overloading: Praktischer Leitfaden mit Code‑Beispielen
  6. C++-Funktionen erklärt: Mit praktischen Code-Beispielen
  7. C# Collections meistern: Praktisches Tutorial mit Real-World-Beispielen
  8. Python print()-Funktion: Praktischer Leitfaden mit Beispielen
  9. Pythons str.count(): Zeichen & Teilstrings zählen mit Beispielen
  10. Python round()-Funktion erklärt mit praktischen Beispielen