[英]C++: Do I need to use cin.get() before I use cin.ignore?
如果我僅在流中使用標准cin cin.ignore(100,'\\n')
是否cin.ignore(100,'\\n')
?
例:
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');
}
還是這些代碼會產生相同的結果?
啊,愚蠢的我,我做了一個函數來調用清除
void clear()
{
cin.clear();
cin.ignore(100,'\n');
}
在我的程序中,它多次調用了函數clear()
。 如果在沒有cin的輸入的情況下連續兩次調用clear()
,則提示輸入空白行。
我猜這是造成它的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.