4 回答
TA贡献1876条经验 获得超5个赞
根据你的问题,我的c++代码实现如下:
//ps: VC++ 6.0下编译通过
#include <iostream>
#include <limits>
using namespace std;
int main()
{
int a;
while(true )
{
cin>>a;
if(cin.good() && getchar() != '.') { //input an real number also is not allowed1: getchar() != '.'
break;
}
else { //clean the buffer
//cout<<"Error! Try agin:" ;
cin.clear();
cin.ignore( std::numeric_limits<std::streamsize>::max(), '\n' );
}
}
cout<<"a = "<<a<<endl;
return 0;
}
另外:
用typeid(var_name)可以判定任意变量的数据类型.
通过实验你可以看到不同的数据类型会有对应的一个字母表示
int--i double--d char--c bool--b 等等.
========================
例子:
#include<typeinfo>
#include<iostream>
using namespace std;
int main()
{
int a = 10;
cout<<typeid(a).name()<<endl;
double b = 1000.22;
cout<<typeid(b).name()<<endl;
return 0;
}
- 4 回答
- 0 关注
- 2145 浏览
添加回答
举报