在学习C++期间看到如下代码:
int main()
{
const int ArSize = 10;
const int MaxLen = 81;
string sayings[ArSize];
char temp[MaxLen];
int i;
for (i = 0; i < ArSize; i++)
{
cout << i + 1 << ": ";
cin.get(temp, MaxLen);
while (cin&&cin.get() != '\n')
continue;
if (!cin || temp[0] == '\0')
break;
else
sayings[i] = temp;
}
return 0;
}
现在的疑惑是代码块中while循环的作用是什么,还有点搞不明白,调试的时候发现如果把while循环注释掉的话在第二次i=1的时候他会直接跳过cin.get(temp, MaxLen),然后到if那就直接退出了。希望能解答一下我的疑惑,谢谢。