Warum werden die integer variablen nicht erkannt?
Hallo Leute,
programmiere C++
Ich wollte aus lw programmieren.
Nun bei beim kompilieren und ausführen ist kein Fehler aber wenn ich da "sehr" eintippe wird letzte Ausgabe angezeigt also die "garnicht, sehr etc." wird nicht erkannt?
Wenn ich die einzelnen Optionen schreibe als Ausgabe wie wenig, abnormal etc. dann werden die nicht ausgegeben ? Warum?
2 Antworten
Weil das Program falsch ist.
Der Type char ist ein 8 Bit Integerwert und enthält 1 Zeichen.
cin>>test
Liest also genau 1 Zeichen ein.
test=='gar nicht'
Sollte eigentlich gar nicht kompilieren, das String oder besser const char * Konstaten in " geschrieben werden, währen ' für char Einzelzeichen ist.
Außerdem vergleich == bei const char * nicht den Inhalt sondern den Zeiger. Also müssen Sie entweder std::string oder strcmp verwenden.
Ich versteh's nicht ganz. Könntest du's nochmal erklären? Die Integer-Variablen namens sehr, garnicht und abnormal verwendest du ja gar nicht. Variable test ist außerdem nur als char deklariert. Da passt nur ein Zeichen rein. Wenn du mit einem String vergleichst, passt das nicht.
Die Integer-Variablen namens sehr, garnicht und abnormal verwendest du ja gar nicht
Als ich mir das angeschaut habe, dachte ich exakt das Gleiche