cin.ignore(100,'\n')
工作,如果我只是使用标准cin通过流?C++:在使用cin.ignore之前是否需要使用cin.get()?
例子:
cin >> temp; //enter key input
if(cin.fail())
{
cin.clear();
cin.ignore(100,'\n');
}
或做我必须使用cin.get()?
实施例:
temp=cin.get();
if(cin.fail())
{
cin.clear();
cin.ignore(100,'\n');
}
或将这些代码产生相同的结果?
您是否试图执行它,看看会发生什么?此外,期望的行为是什么,“temp”的类型是什么? – 2011-03-28 08:07:37
是的,我有,不幸的是,这两个似乎并没有按照我喜欢的方式工作,因此这个问题。 temp是一个'int',所以当用户在键盘上混杂时,它应该清除错误。它的工作原理是这样的,但它会打印一个额外的换行符并暂停,直到我再次按回车。 – dukevin 2011-03-28 08:08:37
然后请描述你想如何表现。 – 2011-03-28 08:09:30