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