一个有关cin.ignore函数的问题
#include<iostream.h>int main()
{
char str1[30],str2[30],str3[30];
cout<<"请输入你的姓名:";
cin>>str1;
cout<<"请输入你的住址:";
cin.ignore();
cin.getline(str2,30);
cout<<"请输入你的籍贯:";
cin.ignore();
cin.getline(str3,30);
cout<<str1<<endl<<str2<<endl<<str3<<endl;
return 0;
}
这个程序里,第一个ignore用对了,第二个用错了,你可以输入几组数据试试。
我想是不是因为用cin的时候,cin会把'\n'存入缓冲区,而利用cin.getline()的时候却不会把'\n'存入缓冲区的缘故,大家说是不是,发表一下你的意见