C++ Problem, wer weiß es?
Wie verwendet man bei Switch case Buchstaben statt zahlen?
1 Antwort
![](https://images.gutefrage.net/media/user/regex9/1455660989427_nmmslarge__0_13_270_270_615d5a3bc6888f4c1486ce2b4d9d8f60.png?v=1455660989000)
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
programmieren
Beispiel:
char letter = 'a';
switch (letter) {
case 'a':
// ...
break;
case 'b':
// ...
break;
case 'c':
// ...
break;
}
![](https://images.gutefrage.net/media/user/Isendrak/1555747535308_nmmslarge__0_0_160_160_7f828fad18ee7edb96b8daceedaeeadb.png?v=1555747535000)
Isendrak
21.03.2020, 18:28
@verreisterNutzer
Interesant. Dein Compiler beschwert sich über eine Variable, die gar nicht existiert... WTF?
Oder hast du etwa irgendwo die "single quotes" vergessen?
![](https://images.gutefrage.net/media/user/regex9/1455660989427_nmmslarge__0_13_270_270_615d5a3bc6888f4c1486ce2b4d9d8f60.png?v=1455660989000)
regex9
21.03.2020, 18:43
@verreisterNutzer
Folgendermaßen machst du etwas anderes als das, was ich vorgegeben habe. Die cases dürfen nur konstante Ausdrücke vorweisen. Eine einfache Variable wäre nicht konstant.
char a = 'a';
char b = 'b';
const char c = 'c';
switch (a) {
case b: // << error! b is not a constant expression
// ...
break;
case c: // << ok
// ...
break;
}
Danke. Es kommt noch der Fehler. Ausdruck muss einen konstanten wert aufweisen. Wert von variable a kann nicht als konstante verwendet werden