如果我给这个程序一个输入字符串,它会给我一些非常奇怪的输出。我该如何处理这个问题?我想简单地说明领事上有错误。
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
cout << endl;
cout << "Homework (out of 70 pts): " ;
int HW ;
cin >> HW ;
cout << "Midterm (out of 100 pts): " ;
int MT ;
cin >> MT ;
cout << "Final (out of 100 pts): " ;
int F ;
cin >> F ;
cout << endl;
int S;
S = HW + MT + F;
cout << "Score: " << S << endl;
cout << endl;
system("pause");
}
答案 0 :(得分:4)
当您输入cin
不期望的值时,例如字符串而不是数字,您的变量中不会读取任何内容,而cin
会设置一个错误标记,以防止任何进一步投入。有关同一主题,请参阅my answer to another question。