免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6816 | 回复: 9
打印 上一主题 下一主题

各位,问题:如何判断是否输入的是int类型 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-10-28 23:23 |只看该作者 |倒序浏览
我很菜,
我想知道,如何在输入的时候来判断是否输入的是int型的数

多谢

论坛徽章:
0
2 [报告]
发表于 2004-10-29 00:08 |只看该作者

各位,问题:如何判断是否输入的是int类型

无法判断.

回答完毕.

论坛徽章:
0
3 [报告]
发表于 2004-10-29 00:31 |只看该作者

各位,问题:如何判断是否输入的是int类型

Really?

论坛徽章:
0
4 [报告]
发表于 2004-10-29 08:37 |只看该作者

各位,问题:如何判断是否输入的是int类型

不是没有办法,是一时想不到什么好办法,比如ascii,但是未免太忙烦

论坛徽章:
0
5 [报告]
发表于 2004-10-29 13:33 |只看该作者

各位,问题:如何判断是否输入的是int类型

只能先转换为string在判断各个char是否在'0'到'9'之间了。

论坛徽章:
0
6 [报告]
发表于 2004-10-29 15:32 |只看该作者

各位,问题:如何判断是否输入的是int类型

那个楼上的,按你那个算法long型也是可以通过的

好像没这么简单。

论坛徽章:
0
7 [报告]
发表于 2004-10-29 23:42 |只看该作者

各位,问题:如何判断是否输入的是int类型

是阿,如果用go3w老兄的意思,只要是数字就行,那其它数字型的也可以

继续讨论,有无更好的方法

论坛徽章:
0
8 [报告]
发表于 2004-10-30 16:13 |只看该作者

各位,问题:如何判断是否输入的是int类型

如果简单控制,可以使用scanf("%d", &a);
如果输入的不是整数,则自动要求重新输入。

比较精确控制是楼上的兄弟说的,用字符串方式输入,完成后再检测每个字符是否为+-0~9,通过循环组织成一个整数,'9'->;'9'-'0'=9...。这已经是我10年前作过的事情了,现在有许多语言和函数能检测是否是整数,但原理均如此。

如果要更精确控制输入的过程,则需要对键盘输入字符进行检测,如果不是0-9,+,-(在最前面),则为非法,取消输入,再需要控制长度(整数表达范围)。

论坛徽章:
0
9 [报告]
发表于 2004-10-31 17:36 |只看该作者

各位,问题:如何判断是否输入的是int类型

简单点的就直接用atoi()转一下,然后查一下返回值不就好了,如果返回值是0的话在判一下字符串内容是否0,如果不是则说明有错

论坛徽章:
0
10 [报告]
发表于 2004-10-31 20:03 |只看该作者

各位,问题:如何判断是否输入的是int类型

内存中的数据说到底都是二进制,只是给的解释不一样罢了,你用int类型去解释它它就是int,用char去解释它它就是char,等等.

所以,对一个输入的数是不能判断它的类型的.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP