Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

cin.fail()

Ostatnio zmodyfikowano 2011-04-25 17:27
Autor Wiadomość
Dawidsoni
Temat założony przez niniejszego użytkownika
cin.fail()
» 2011-04-25 16:10:47
Mam program, w którym chcę pobrać liczbę. Kiedy użytkownik nie podaje liczby tylko tekst to wracam spowrotem do tego wczytania. Wygląda to tak:
C/C++
int i = 1;
while( i < 2 ) {
    int liczba;
    cin >> liczba;
    if( cin.fail() ) {
        funkcja_czyscoca_ekran();
        continue;
        else {
            funkcja();
            i++
        }

Jednak kiedy czyści mi ekran i pojawia mi się komunikat o nie-liczbie to zamiast ponownego wczytania odrazu pojawia mi się ten sam komunikat.

Proszę o pomoc.
P-31941
Mrowqa
» 2011-04-25 16:15:38
musisz zamieścić ( przed wczytaniem liczby ):
C/C++
cin.clear(); //usuniecie flagi bledu
cin.sync(); // wyczyszczenie bufora
Poczytaj kurs - tam chyba nawet o tym pisze ...
P-31942
Dawidsoni
Temat założony przez niniejszego użytkownika
» 2011-04-25 17:27:35
Działa. Dzięki.
P-31948
« 1 »
  Strona 1 z 1