cin.clear () не сбрасывает объект cin

У меня есть следующий цикл. Он должен читать числа до EndOfFile или пользовательского ввода -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;
 }
}

Когда пользователь вводит недопустимую вещь, такую ​​как некоторые char s, этот цикл повторно без сброса состояния ошибки или остановки.

9
задан 14 September 2011 в 08:17
поделиться