Frage von agent888, 36

Warum wird der String nicht akzeptiert?

Hi, ich programmiere einen Taschenrechner in C++ und in der switch-Anweisung wird der string nicht akzeptiert. char verwende ich deshalb nicht, weil ich den Taschenrechner erweitern will, sodass der User zum Beispiel auch Wurzel oder ähnliches eingeben kann... Wie kann ich das Porblem lösen, sodass strings akzeptiert werden? Vielen Dank für die Antworten schon im Voraus! Quelltext: https://www.codecopy.de/?action=show&q=34dc4d

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von ShadowHow, 24

Die Variable für switch muss integer sein.

Kommentar von TeeTier ,

Ein String ist sehr wohl integer, da er ja nichts Verwerfliches getan hat ... hahaha, man war der flach. :)

http://www.duden.de/rechtschreibung/integer

Ansonsten erwartet Switch einen Integer, im Sinne von Ganzzahl. :)

Antwort
von Tschoo, 9

Hallo!

Gar nicht, musst deinen Strings halt Integer/Char zuweisen, so dass du diese im switch verwenden kannst.

final Integer WURZEL_ZIEHEN = 7;
final Integer ADDIEREN = 1;
final Integer FERTIG = 0;
:
:

Integer switchIndex;

if(inputString.compare("wurzel")) switchIndex = WURZEL_ZIEHEN;
else ....

switch(switchIndex){
:
:
case WURZEL_ZIEHEN : {
(code für Wurzel ziehen)
}
}

Das ist jetzt JAVA, aber C++ sollte in diesem Fall ähnlich sein, und deine Texte hast du auch noch.

Keine passende Antwort gefunden?

Fragen Sie die Community