c++ 如何判断输入数据是否为 int型?
...
int a;
cin>>a;
当输入的不是数字( 如字母) 时会导致程序出错,
有什么办法可以判断输入的a 是否为 int型呢??
如果判断不是的话重新输入.
谢谢!!
c++ 如何判断输入数据是否为 int型?
如果读入1个int 成功,输入数据就是 int, 否则 就 不是 int.c++ 若用 c 风格 读入 整型,可以用 读语句 返回值 判断:include<iostream> using namespace std;include <stdio.h> int k, r;r = scanf("%d",&k);if (r==1) printf ("good\\n"); else printf("error\\n");--- c++...
C++中如何判断输入的字符是float还是int型
如果直接以cin>>方式,输入到float或者int变量中,无法判断类型。要判断输入的类型,只能以字符串方式输入。然后判断字符串中的字符类型。如果存在小数点,则代表是浮点数,否则为整型。代码如下:int main(){ char s[200]; cin >> s; int i; for(i = 0; s[i]; i ++) if(...
C++ 如何判断输入的数据是否为整数
定义接收内容的字符串 string s,调用C++的getline方法,格式如下:getline(cin,s),getline可以接收空格,遇到换行输入结束。然后依次判断字符串中的字符,是否为数字,如果遇到一个非数字的字符,则不是整数。bool isDigit(char a) { if (a - '0' == 0 || a - '0' == 1 || a - '0'...
c++如何判断一个数是不是整型
if(sizeof(a)==sizeof(int))cout<<"是整数\\n";else cout<<"不是整数\\n";
C++编程,如何实现验证输入的内容是否为整型?
string m;int i=0,RMB=0;cin>>m;while(m[i])if(m[i]<'0'||m[i]>'9'){ cout<<"Not a integer number"<<endl;exit(-1);} else { RMB=RMB*10+m[i]-'0';i++;}
c++如何判断输入一个数为整数
如果你输入的时候使用%d输入的,输入的数就是整数了。如果是输入的一个double类型的,用下面的比较一下就可以:如: double b = 2.00;if ( b == (int)b) printf(“b是一个整数.\\n");
C++ 如何判断一个变量是否为整型,而非字符等?
如果声明的时候用的类型是 int ,变量就是 int 类型的。如果声明的时候用的类型是 char ,变量就是 char 类型的。控制台的输入没有类型之说。由程序员考虑当输入符合什么格式的时候,能被程序认为是“合理”的输入。对于 unsigned int a;cin>>a;可以简单地假定“只要 cin 认为它是合理的输入,就...
C++中怎么判断输入数字类型是整型还是浮点数?
不需要判断输入数字类型是整型还是浮点数,而且也根本无法判断。解决办法:用scanf读取输入数据,同时判断是否读取完毕。这是因为符合输入格式,输入流中只会剩下换行符'\\n'。代码片段如下:int a, b; char c;scanf("%d %c %d", &a, &c, &b);if (getchar() != '\\n') \/\/ 如果输入 3....
c++ 如何判断一个输入的数是不是整数? 然后就行相应的操作??? 在线等...
使用cin.fail()就行 include <iostream> using namespace std;void main(){ int i;cout<<"Please enter a number:"<<endl;cin>>i;if(cin.fail())cout<<"ERROR INPUT!!!"<<endl;}
c++中判断数据类型
int a;if(typeid(a) == typeid(int)) cout<<"int";if(typeid(a) == typeid(float)) cout<<"float";typeid和sizeof一样是个运算符,我一直很奇怪为什么很少人提到它