C++中的输入判断问题,急

来源:百度知道 编辑:UC知道 时间:2024/09/25 21:24:03
程序中定义了一个unsigened long num;而当我输入的是字符的时候就进入死循环了,那么用什么方法可以避免输死循环,即当输入的字符的时候推出程序即可。我用了if(nmu>'9'||num<'0'),但这时将把数的输入范围限制在了0到9之间啦

我用了if(nmu>'9'||num<'0'),但这时将把数的输入范围限制在了0到9之间啦
感觉这样就可以了啊。数字本来就是0到9啊。
除非你想包括16进制的,那你就再加一个
if(nmu=>'9'||num<='0'|| (num >='a' && num <= 'd'))

你把你的那段程序(就是出问题的那段)发出来看看.
那我还是告诉你个办法吧.你输入进去之后,在循环里面判断你输入的值的每一个下标的值,如果碰到不是数字的,就输出"不是数字"+return结束程序.

用sizeof(num)
但是你要知道unsigened long 是多少位。如果是8位
就判断if(sizeof(num)==8)这样就可以了