[Anfänger] | Ausgabe gibt "falsch" aus
-
Hallo, ich bin neu in der Sprache C++ und habe mir auch ein Buch gekauft. Allerdings komme ich einfach nicht weiter weil ich meinen Denkfehler nicht finde. Und zwar gibt mir folgender Quelltext "falsche" Daten aus:
#include <iostream> using namespace std; enum Ampel {rot, gelb, gruen}; int main() { Ampel ampel = rot; for(int n = 0; n < 3; ++n) { switch(n) { case rot: cout << "ROT" << endl; case gelb: cout << "GELB" << endl; case gruen: cout << "GRUEN" << endl; } ampel = static_cast<Ampel>(ampel + 1); } }Es erscheint folgende Ausgabe:
ROT
GELB
GRUEN
GELB
GRUEN
GRUENAllerdings soll diese so aussehen:
ROT
GELB
GRUENKann mir da eventuell einer bei helfen und mir sagen was ich da falsch mache?
-
Wenn ein case-Zweig als wahr erkannt wird, läuft das Programm von da ab sequentiell weiter, und führt auch die zu den folgenden case-Zweigen gehörenden Instruktionen aus.
Wenn das nicht gewünscht ist, schließt man einen case-Zweig mit break ab:switch(...) { case bla: ... ... break; case blup: ... break; ...
-
Öhm :o
.<
Ja, danke

Jetzt bin ich wieder schlauer