STRING eingabe/Ausgabe mit whitespace?
-
Hallöchen liebe gemeinde,
ich habe zur zeit folgendes Problem:
Ich versuche einen String per eingabe einzulesen um diese an einer anderen stelle wieder ausgeben zu können. Leider Funktioniert das ganze nicht so wie ich das will... Entweder bleibt die Ausgabe leer oder ich bekomme alles nur bis zum ersten whitespace angezeigt ...
Es geht darum, das man per eingabe eine subscription(Betreff) eingeben soll, der später wieder ausgegeben wird.
string subscr;
getline(cin, subscr); <--- will nicht funzen (Ausgabefeld bleibt leer!/nimmt keine angaben an.)wie schaffe ich das, das jemand z.B. einen kompletten Satz:
Hier, ich bin ein Schaf!
eingeben kann, und diese am ende wieder mit
cout << "Wer ist ein Schaf?" << subscr << endl;
(Wer ist ein Schaf? Hier, ich bin ein Schaf!)ausgegeben bekommt?
danke schon mal an alle die sich hier beteiligen mir zu helfen :).
-
std::getline macht genau das. Das Problem liegt woanders (TM).
-
Hallo Bend0r,
es sollte genau so funktionieren, wie du es bereits implementiert hast.
getLine(...)sollte erst bei einem newline stoppen, während cin tatsächlich nur bis zum nächsten whiespace liest.
Nachdem ich keinen Fehler gefunden habe, hab ich auch mal getestet: Alles prima

Viele Grüße,
MaBa