kostenloser Webspace werbefrei: lima-city


Endlosschleife ??

lima-cityForumProgrammiersprachenC/C++ und D

  1. Autor dieses Themas

    toolz

    Kostenloser Webspace von toolz

    toolz hat kostenlosen Webspace.

    So. Mein erstes Projekt mit C++, hier soll in einer Konsolenanwendung eingegebene Zahlen abgespeichert werden, es funktioniert auch so weit. Wenn man aber einen Buchstaben eingibt, wird dieser zwar nicht abgespeichert, aber die eingebaute Fehlermeldung wird mir unendlichmal ausgeworfen.

    if (cin.fail()) {
                    cin.clear();
                    cout << "Fehler bei der Eingabe, versuchen Sie es erneut." << endl << endl;
              } else {
                     cin >> eingabe;
                }


    FRAGE: Warum?

    Beitrag zuletzt geändert: 14.4.2009 17:43:09 von toolz
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. kochmarkus

    Co-Admin Kostenloser Webspace von kochmarkus

    kochmarkus hat kostenlosen Webspace.

    Du reparierst zwar mit cin.clear() deinen Eingabestream, aber die falsche Eingabe steht danach immer noch im Puffer und cin.fail() wird wieder einen Fehler melden.

    Schreib nach dem cin.clear() mal ein cin.ignore(std::numeric_limits<int>::max(),'\n'); um den Puffer zu leeren, dann sollte es funktionieren.

    Beitrag zuletzt geändert: 14.4.2009 17:52:00 von kochmarkus
  4. Autor dieses Themas

    toolz

    Kostenloser Webspace von toolz

    toolz hat kostenlosen Webspace.

    Danke, das funktioniert :thumb:
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!