刚接触C++,对于C++的标准库知道的还很少。
在按照书上的例子进行例程编写的时候,经常遇到要输入一个整型数据。
一般做法是直接:cin >> intVar;
这样做通常会遇到,如果不输入数字,输入字符,就会出错。
根据所学的知识,有如下解决办法:
#include <iostream>
using namespace std;
int main()
{
float a;
char buffer[ 255 ];
cout << "a = ";
cin >> a;
while( cin.fail() )
{
cin.clear(); // 复位标志位
cout << "数据类型不对,请重新输入:";
cin.getline( buffer, 255 ); // 清空上次的输入
cin >> a;
}
cout << a << endl;
return 0;
}