eingabe von chars oder strings



  • hi, ich wollte mit "cin" die variable "char buffer[1024]" befüllen, klappt auch ganz gut, aber wennn ich bei der eingabe leerzeichen mache, sind alle zeichen ab dem ersten leerzeichen einfach weg .... ^^ Is bestimmt ein ganz dooferfehler^:
    Bitte helft^^

    cin >> buffer;  // Hier geben ich z.B. "12 34" ein
        cout << buffer; // Dann kommt hier "12" ... das leerzeichen und die 34 sind nich da ... :(
    

    mfg



  • versuchs mal so.

    cin.getline(buffer, 1024);
    cout << buffer;
    

    mit enter bricht die eingabe ab...



  • Zur Erklärung: op>> liest nur bis zum ersten Whitespace, das es in der Eingabe findet (d.h. die Zeichen " 34" bleiben im Eingabepuffer zurück), getline() liest bis zum Zeilenende (oder bis zu einem beliebigen vorgegebenen Zeichen).


Anmelden zum Antworten