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

Flaga strumienia wejścia warunkiem pętli pominięcie instrukcji cin

Ostatnio zmodyfikowano 2014-08-19 20:37
Autor Wiadomość
jizzle
Temat założony przez niniejszego użytkownika
Flaga strumienia wejścia warunkiem pętli pominięcie instrukcji cin
» 2014-08-19 13:09:22
C/C++
int main()
{
   
    float a;
    float b;
    char znak;
    cin.clear();
   
    while( cin.good() == true ) {
        cout << "wprowadz pierwsza liczbe:" << endl;
        cin >> a;
        if( cin.fail() ) {
            cout << "to nie jest liczba!";
            cin.sync();
            cin.clear();
        }
        else {
            break;
        }
    }
}

trochę poległem na starcie :P gdy wprowadzam coś poza liczbą, to napisy "wprowadz pierwsza liczbe:" i "to nie jest liczba!" wyświetlają się w nieskończoność z pominięciem instrukcji cin >> a; ocb?

Żeby nie było, wiem jak to obejść, tylko zastanawia mnie dlaczego tak się właśnie stało.
P-115717
pekfos
» 2014-08-19 20:37:20
Najpierw clear(), potem sync().
P-115766
« 1 »
  Strona 1 z 1