返回信息流也就是说如何判断它是由数字和点组成的,而带有字母或其他符号,有没有像isdigit()那样的函数可以完成这个判断呀,求教!
这是一条镜像帖。来源:北邮人论坛 / cpp / #87181同步于 2015/5/22
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
如果一个变量是double类型,如何判断它是否是一个数字
herbice
2015/5/22镜像同步12 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
同学你帮忙看看我刚发的这个贴里的程序,其实我是对这里面isdigit()的用法感到不解,多谢哈
【 在 Subly 的大作中提到: 】
: 自己写个函数
http://bbs.byr.cn/#!article/CPP/87183这是那个题
【 在 karon1988 的大作中提到: 】
: 都是double类型了还要判断什么。。。
: 难道
: double d = "dada";
: 这句你能编译得过?
:
发自「贵邮」
实测你的帖子里的代码有bug
我输入123.34c时
他会把123.34当作数加进去
【 在 herbice 的大作中提到: 】
: http://bbs.byr.cn/#!article/CPP/87183这是那个题
:
: 发自「贵邮」
bool check_digit(string input) {
int dot_found = 0;
for (int i=0; i<input.length(); ++i) {
if (!(isdigit(input[i])||input[i]=='.')) {
return false;
}
if (input[i]=='.') {
++dot_found;
}
if (dot_found>1) {
return false;
}
}
return true;
}
这个函数可以实现你的要求
【 在 herbice 的大作中提到: 】
: http://bbs.byr.cn/#!article/CPP/87183这是那个题
:
: 发自「贵邮」
【 在 herbice 的大作中提到: 】
: 也就是说如何判断它是由数字和点组成的,而带有字母或其他符号,有没有像isdigit()那样的函数可以完成这个判断呀,求教!
double类型的值怎么会是由数字和点组成的呢?
这么写应该是有问题的吧...
【 在 karon1988 的大作中提到: 】
: [code=c]
: bool check_digit(string input) {
: int dot_found = 0;
: ...................