我有以下循环。它应该读取数字直到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;
}
}
当用户输入一个无效的东西时,例如 some char
s,这个循环将永远重复,而不会clear
出现错误状态或停止。