cin.Clear () non ripristina CIN Object
-
30-10-2019 - |
Domanda
Ho il seguente ciclo. Dovrebbe leggere i numeri fino a EndOfFile
, o l'utente input -999
int arr[100];
int index;
for (index = 0; index < 100; index++)
{
cin >> arr[index];
if (!cin)
{
cin.clear();
index--;
continue;
}
if (arr[index] == -999)
{
break;
}
}
Quando l'utente inserisce una cosa non valida, come alcuni char
s, questo ciclo viene ripetuto per sempre clear
sullo stato di errore o arresto.
Nessuna soluzione corretta
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow