cin: Eingabe mit Leerstellen
-
Ich habe eine kurzer Programmchen geschrieben das den Benutzer nach seinem Namen fragt und diesen dann ausgibt. Dabei fällt mir aber auf dass die Eingabe nur bis zur ersten Leerstelle eingelesen wird.
#include <iostream> #include <string> using namespace std; int main () { string name; cout << "Wie heissen Sie?" << endl; cin >> name; cout << name; }Eingabe: Cosmic P
Ausgabe: Cosmic
-
cin.getline() bzw. getline()
beispiel aus der msdn(rest kann man sich herleiten oder zusamensuchen):
string s1; cout << "Enter a sentence (use <space> as the delimiter):"; getline(cin,s1, ' '); cout << "You entered: " << s1;
-
Also so etwa:
#include <iostream> #include <string> using namespace std; int main() { string s1; cout << "Wie heissen Sie?" << endl ; getline(cin,s1, ' '); cout << "You entered: " << s1; };
-
C++_new_progger schrieb:
Also so etwa:
#include <iostream> #include <string> using namespace std; int main() { string s1; cout << "Wie heissen Sie?" << endl ; getline(cin,s1, ' '); cout << "You entered: " << s1; };Hi,wenn du nen Leerzeichen als Seperator nimmst hat getline den gleichen Effekt wie cin....
MfG Spacelord
-
Spacelord schrieb:
Hi,wenn du nen Leerzeichen als Seperator nimmst hat getline den gleichen Effekt wie cin....
stimmt nateurlich -wollte nur die verwendung von getline() mithilfe des beispieles aus der msdn verdeutlichen, dieses dabei allerdings nicht veraendern.
string name; cout<<"Wie heissen Sie?"<<endl; getline(cin,name); cout<<name;
-
Und was ist jetzt da der delimiter? \n oder was?
-
milo51 schrieb:
Und was ist jetzt da der delimiter? \n oder was?
Korrekt
-
milo51 schrieb:
Und was ist jetzt da der delimiter? \n oder was?
was ist kein gueltiger Delimiter.

-
Ja sry, hab die Anführungszeichen vergessen...ich meinte natürlich: \n oder "was"? .... -.-
