逃往苏联的新疆人:c++如何来判断是否为字符还是数字

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/29 01:51:36
c++如何来判断是否为字符还是数字,
刻输数字时如果输入字母,老是会出现死循环,
如何过滤?
高手们请指教.
比如说该输入数字的时候输入了一个字母,会出现死循环.
如何对输入的数据做审核让他输入字母的时候提示输入错误.

首先
#include <ctype.h>
然后
char c;
c = getchar();

isdigit(c);来判断是否为数字,如果是数字那么会返回非0
isalpha(c);来判断是否为字母,如果是字母那么返回非0

如果你的输入是字符型 判断输入进来的字符的ASCII码就可以区别是数字还是字符

inline int toDigit(const string &toConvert)
{
stringstream streamIn(toConvert);
int tmp = 0;
streamIn>>tmp;
return tmp;
}

试下,行不,我没试过

====
忘了说了,这个要引用std命名空间的,还有就是这只是过滤字符串,并不阻止非数字的输入!

请把问题清晰定义,否则没法帮你

那你就只接收字符,'1'也算字符哦
然后写个转换函数把数字转换出来,其他的滤掉