新手对一段简单的代码不是很理解,高手帮忙解释一个,谢谢.
nnh 2006-08-05 11:57:15 #include<iostream>
const int Max=5;
int main()
{
using namespace std;
double donation[Max];
cout<<"Please enter the donation.\n";
int i;
for (i=0;i<Max;i++)
{
cout<<"round #"<<i+1<<":";
while (!(cin>>donation[i])){
cin.clear();
while (cin.get()!='\n')
continue;
cout<<"Please enter a number: ";
}
}
system("pause");
return 0;
}
-------以下代码:
for (i=0;i<Max;i++)
{
cout<<"round #"<<i+1<<":";
while (!(cin>>donation[i])){
cin.clear();
while (cin.get()!='\n')
continue;
cout<<"Please enter a number: ";
}
}
while (!(cin>>donation[i])){ 是输入错误信息时,如a,则执行.
cin.clear(); 是不是把a和回车一起清除吗?
while (cin.get()!='\n') 是不是如果没有遇到换行时,执行?
continue;是继续执行哪个循环呢?
大家可以用输入一个字母,来对这代码进行解说吗?谢谢大家了.