在使用cin操作进行数据输入的过程中,经常会出现定义的数据类型与键盘输入的数据类型不匹配的情况,那么如何来解决这一问题呢?这里举一个简单的例子,
#include<iostream>
using namespace std;
int main(int argc,char **argv)
{
long x;//这里定义一个long型的变量x
cin>>x;
while( cin.fail() )
{
cin.clear();//复位标志,将流cin中的所有状态值都重设为有效状态
cout<<"键入的数据类型与定义的数据类型不匹配,请重新输入";
cin.ignore(9999,‘\n‘);清空上次输入
cin>>x;//重新输入x
}
return 0;
}
原文地址:http://www.cnblogs.com/jasonkent27/p/4168241.html