下面是代碼如何使CIN只拿數字
double enter_number()
{
double number;
while(1)
{
cin>>number;
if(cin.fail())
{
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
cout << "Invalid input " << endl;
}
else
break;
cout<<"Try again"<<endl;
}
return number;
}
我的問題是,當我輸入類似1X,然後1被作爲輸入沒有注意到被冷落的另一個運行特徵。 有什麼辦法可以讓它與任何實數一起工作1.8?
將所有內容讀入一個字符串並相應地解析輸入? – Rhexis
使用cin.get()然後檢查EOF字符? – Ansari