Jonsc1 Geschrieben 9. Oktober 2005 Geschrieben 9. Oktober 2005 Steinigt mich, aber ich hab mal wieder ne total dumme Frage: Ersteinmal der betroffene Code in C++: #include <iostream> using namespace std; int main() [ string name; string strasse; cout<<"Name: "; cin>>name; cout<<"Strasse: "; cin>>strasse; ] Wenn man nun als Namen "max" eingibt ist alles in bester Ordnung. Wenn man aber "max mustermann" eingibt wird "max" in die Variable name geschrieben, und "mustermann" in die Variable strasse. Wollte nun fragen wie man das anstellt das alles in eine Variable geschrieben wird, inclusive dem Leerzeichen. Zitieren
Guybrush Threepwood Geschrieben 9. Oktober 2005 Geschrieben 9. Oktober 2005 Z.B. mit cin.getline Zitieren
Jonsc1 Geschrieben 9. Oktober 2005 Autor Geschrieben 9. Oktober 2005 Z.B. mit cin.getline Kannst du nen kleinen Beispielcode anhängen um das zu verdeutlichen? Zitieren
Klotzkopp Geschrieben 9. Oktober 2005 Geschrieben 9. Oktober 2005 Z.B. mit cin.getlineLieber nicht mit cin.getline, weil man da nur einen char-Zeiger angeben kann -> Gefahr eines Pufferüberlaufs. Lieber std::getline, da kann man auch direkt in einen std::string einlesen. Also: getline(cin, name); Zitieren
Guybrush Threepwood Geschrieben 9. Oktober 2005 Geschrieben 9. Oktober 2005 Ist der 2te Parameter bei cin.getline nicht für die länge des char arrays? Zitieren
Klotzkopp Geschrieben 9. Oktober 2005 Geschrieben 9. Oktober 2005 Doch, hast recht. Also, weniger die Gefahr eines Pufferüberlaufs (man kann ja immer noch einen zu großen Wert angeben), als das umständliche Hantieren mit char-Arrays und -Zeigern und dem Problem, dass man nie wissen kann, wieviele Zeichen der User eingibt. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.