cin auf bestimmten buchstaben prüfen
-
Hi
ich such nach einer möglichkeit, das ich meine eingabe auf einenbestimmten buchstaben prüfen kann.
zum beispiel: cout << "wollen sie hier fortsetzen? -y/n- ";
cin << entscheidung;Was muss ich tun um herauszufinden ob y oder n eingegeben wurde ??
-
Hallo lurschi,
Willkommen im C++-Forum.
lurschi schrieb:
ich such nach einer möglichkeit, das ich meine eingabe auf einenbestimmten buchstaben prüfen kann.
zum beispiel: cout << "wollen sie hier fortsetzen? -y/n- ";
cin << entscheidung;Was muss ich tun um herauszufinden ob y oder n eingegeben wurde ??
Versuche dies:
cout << "wollen sie hier fortsetzen? -y/n- "; char entscheider; if( cin >> entscheider && entscheider == 'y' ) { // Ja - fortsetzen } else { // Nein }
Gruß
Werner
-
er unterstreicht mir == und sagt das operationstypen inkompatipel sind (char* und char)
anmerkung : habe entscheidung als char [100] deklariert
-
lurschi schrieb:
anmerkung : habe entscheidung als char [100] deklariert
Das ist dein Fehler. Es reicht ja ein Zeichen einzulesen, also reicht auch ein char.
-
danke das klappt soweit schon mal ganz gut ,
nur ich muss jetzt klappt es nur wenn ich 2 mal y eintippen
-
wie kann ich das gleiche mit einem string prüfen
die erste version klappt aber auch nur wenn ich entscheidung ohne die Klammern [] deklariere und ich doppelt y eintippe
gibs auch n Lösung für chars mit den Klammern ?[]
-
lurschi schrieb:
gibs auch n Lösung für chars mit den Klammern ?[]
Ja, ein Anfänger sollte keine "chars mit den Klammern" verwenden.
Benutze stattdessen std::string.
cout << "wollen sie hier fortsetzen? -y/n- "; std::string entscheider; if( cin >> entscheider && entscheider == "y" ) { // Ja - fortsetzen } else { // Nein }