在一个循环中多次使用cin.getline()输入char字符串,当循环进入第二次时,总是会跳过第一个cin.getline()的输入,直接进入第二个cin.getline()的输入,问题代码如图(不包含注释部分),解决方法就是加上注释部分。
int getinfo(student pa[],int n)
{
using namespace std;
int i=0;
for(i=0;i<n;i++)
{
//cin.clear();
//cin.sync();
cout<<"enter the shuzu :"<<i+1<<endl;
cout<<"name:";
cin.getline(pa[i].fullname,SLEN);
cout<<"hoob:";
cin.getline(pa[i].hobby,SLEN);
cout<<"num:";
cin>>pa[i].coplevel;
}
return i;
}