Was ist eine Switch-Anweisung in C ++?
Switch case-Anweisungen sind kontrollierte Anweisungen, die als Ersatz für if-else-Anweisungen angesehen werden. Es handelt sich um eine Mehrwegverzweigungsanweisung, mit der der Ablauf der Ausführung in Codeteilen basierend auf dem Wert des Ausdrucks organisiert werden kann. In einem sehr einfachen Begriff wertet eine switch-Anweisung einen Ausdruck aus, testet ihn und vergleicht ihn mit den verschiedenen im Code geschriebenen Fällen. Sobald eine Übereinstimmung mit einem Fall gefunden wird, gibt die Steuerung diesen Fall ein und beginnt mit der Ausführung der in diesem Fall geschriebenen Anweisungen, bis eine break-Anweisung gefunden wurde. Sobald eine break-Anweisung erscheint, wird die switch-Anweisung beendet und die Programmsteuerung verlässt switch.
Es kann manchmal vorkommen, dass kein Fall mit dem Wert des Ausdrucks übereinstimmt. In solchen Fällen wird ein Standardfall erwähnt, der immer dann ausgeführt wird, wenn keine Übereinstimmung gefunden wird. Die Fälle in einem Block einer switch-Anweisung werden durch verschiedene Zahlen oder Zeichenfolgen dargestellt, die als Bezeichner bezeichnet werden. Der Wert des Ausdrucks oder der vom Benutzer angegebene Wert wird mit diesen Fällen verglichen, bis die Übereinstimmung gefunden wird.
Syntax der C ++ - Switch-Anweisung
Die Syntax für die switch-Anweisung in der Programmiersprache C ++ ist unten angegeben.
switch( expression )
(
case value1:
//Block of code;
break;
case value2:
//Block of code;
break;
case valueN:
//Block of code
break;
default:
//Block of code
break;
Sie müssen Folgendes beachten, wenn Sie eine Switch-Anweisung verwenden:
- Fallbezeichnungen können eine Ganzzahl oder ein Zeichen sein und sollten eindeutig sein
- Fallbeschriftungen enden immer mit einem Semikolon.
- Obwohl eine Standardfallbezeichnung nicht obligatorisch ist, kann sie allenfalls eine sein, wenn sie definiert ist.
- Sie benötigen eine break-Anweisung, um die Steuerung aus der Schleife zu entfernen. Andernfalls werden alle Fälle ausgeführt, bevor eine break-Anweisung ausgeführt wird.
- Die Standardfallbezeichnung hat keine bestimmte Position.
- Die switch-Anweisung kann auch verschachtelt sein.
Flussdiagramm der Switch-Anweisung
Wie funktioniert die Switch-Anweisung in C ++?
Lassen Sie uns den im obigen Flussdiagramm dargestellten Kontrollfluss verstehen, um ein besseres Verständnis des Ausführungsflusses zu erhalten.
Mit der switch-Anweisung wird ein Ausdruck übergeben, der einem der Werte der Fälle entspricht. Falls der Wert nicht gleich ist, wird der Standardfall ausgeführt. Der Wert dieses Ausdrucks wird dann mit der Fallkennung oder dem ersten Fall verglichen. Wenn der erste Fall zutrifft, wird der dem ersten Fall zugeordnete Codeblock ausgeführt. Sobald die Unterbrechung auftritt, wird die Ausführung angehalten und Sie beenden die switch-Anweisung. Wenn der Fall jedoch nicht übereinstimmt, geht die Ausführung zum nächsten Fall über. Wenn dieser Fall zutrifft, wird der zweite Codeblock ansonsten ausgeführt, und der Ablauf prüft den nächsten Fall auf ähnliche Weise. Wenn keine Groß- / Kleinschreibung zutrifft, wird der Standardcodeblock ausgeführt.
Beispiele für Switch-Anweisungen in C ++
Sehen wir uns einige Beispiele für die switch-Anweisung in C ++ an.
Beispiel 1
Dieses Beispiel verdeutlicht die Verwendung von switch-Anweisungen.
#include
using namespace std;
int main () (
char grade_report = 'D';
cout << "Your performance is: " << endl;
switch(grade_report) (
case 'A' :
cout << "Outstanding Result!\n" << endl;
break;
case 'B' :
cout << "Excellent Result!\n" << endl;
break;
case 'C' :
cout << "Good Result\n" << endl;
break;
case 'D' :
cout << "Satisfying Result\n" << endl;
break;
case 'F' :
cout << "Poor Result\n" << endl;
break;
default :
cout << "You did not appear for exam\n" << endl;
)
return 0;
)
Ausgabe:
Ihre Leistung ist: Zufriedenstellendes Ergebnis
Beispiel # 2
Dieses Beispiel zeigt die Verwendung der break-Anweisung in einem Schalter. Wenn die break-Anweisung nach dem case nicht angegeben wird, wird der Ausführungsfluss fortgesetzt, bis er auf die break-Anweisung trifft.
#include
using namespace std;
int main() (
int range_of_number=50;
switch (range_of_number) (
case 10:
case 20:
case 30:
cout << "The number is 10 or 20 or 30 " << endl;
break;
case 50:
case 55:cout << "This case also executes because there is no break " << endl;
cout << "\n" << endl;
case 60:
cout << "The number is either 40 or 50 or 60" << endl;
break;
default:
cout << "The number is greater than 60" << endl; ))
Ausgabe:
Dieser Fall wird auch ausgeführt, weil keine Unterbrechung vorliegt
Die Nummer ist entweder 40 oder 50 oder 60
Beispiel # 3
#include
using namespace std;
int main()
(
int x = 10, y = 5;
switch(x==y && x+y<10)
(
case 1:
cout << "hi" << endl;
break;
case 0:
cout << "bye" << endl;
break;
default:
cout << " Hello bye " << endl;
))
Ausgabe:
Tschüss
Beispiel # 4
Verschachtelte Switch-Anweisung
#include
using namespace std;
int main() (
int ID = 300;
int password = 1000;
cout << "Enter Your ID:\n " << endl;
scanf("%d", & ID);
switch (ID) (
case 300:
cout << "Enter your password:\n " << endl;
scanf("%d", & password);
switch (password) (
case 1000:
cout << "Welcome to the portal\n" << endl;
break;
default:
cout << "Enter correct password" << endl;
break;
)
break;
default:
cout << "Enter correct ID" << endl;
break;
))
Ausgabe:
Dies hängt von den vom Benutzer eingegebenen Werten ab.
Ausgang 1:
Geben Sie Ihre ID ein: 300
Geben Sie Ihr Passwort ein: 1000
Willkommen auf dem Portal
Ausgang 2:
Geben Sie Ihre ID ein: 100
Geben Sie die richtige ID ein
Ausgang 3:
Geben Sie Ihre ID ein: 300
Geben Sie Ihr Passwort ein: 000
Geben Sie das richtige Passwort ein
Fazit
Sie müssen wissen, dass der grundlegende Ablauf und die Funktionalität der switch-Anweisung in allen Programmiersprachen gleich bleiben. Der Unterschied ist nur in der allgemeinen Syntax zu sehen, die auf der verwendeten Programmiersprache basiert.
Empfohlene Artikel
Dies war eine Anleitung zur Switch-Anweisung in C ++. Hier diskutieren wir das Konzept, die Syntax, die Funktionsweise und die Beispiele für Switch-Anweisungen in C ++. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -
- C ++ - String-Funktionen
- Was ist eine Template-Klasse in C ++?
- Anwendungen von C ++ in der realen Welt
- Leitfaden zur Fallbeschreibung in Java
- Anleitung zur PHP-Switch-Anweisung