【发布时间】:2011-11-16 19:32:48
【问题描述】:
我有以下循环。它应该读取数字直到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;
}
}
当用户输入一个无效的东西时,例如一些chars,这个循环将永远重复,而clear没有错误状态或停止。
【问题讨论】:
标签: c++ inputstream invalid-characters