String::getline

Guntpat1981

Mitglied
Guten Morgen nochmal,

ich möchte, dass ein Benutzer per Tastatur in eine String Variable schreibt, jedoch sollen auch Blanks vorkommen können. Leider wird beim normalen cin>>string; immer alles nach dem ersten Blank abgeschnitten. Ich weiß, dass ich mit der Funktion getline zeilenweise einlesen kann, nur leider funktioniert meine Funktion nicht so, wie ich das gerne hätte.

Beispiel:
string benutzereingabe;
getline ( cin, benutzereingabe );

Mit dieser Funktion geht es zwar, jedoch muss der Benutzer zweimal die Returntaste bedienen, um im Menü weitergeführt zu werden, was äußerst störend ist.
Vielleicht habt ihr ja eine Idee.
Gruß,
Patrick
 
Hallo,

versuch vor deiner getline Anweisung den Tastaturpuffer mal zu löschen...

Etwa so:

Code:
cin.seekg(0,std::ios::end); 
cin.clear(); 
getline(cin, benutzereingabe);
Ansonsten funktioniert dein Schnipsel bei mir einwandtfrei.

Gruß

RedWing
 
Zurück