求助
我要用c++写一个计算器(控制台应用程序)但我没办法识别输入是否为数字,我该怎么写来判断输入是否为非法字符呢?各位帮帮我{:10_266:} 不能用,isalpha函数!数字大了就不行了 定义整形变量,用cin语句,判断流状态即可 楼上判断流状态不是很清楚,用char数组接收用户输入,用循环单字符判断是否为数字,有一个不为数字就返回false 闪电猫网络 发表于 2017-12-5 18:54
楼上判断流状态不是很清楚,
用char数组接收用户输入,用循环单字符判断是否为数字,有一个不为数字就返回 ...
怎么用循环单字符判断是否为数字?我不会啊{:5_100:} #include <stdio.h>
#include <string.h>
bool IsNum(const char* pStrNum)
{
if (NULL == pStrNum)
{
return false;
}
int nStrLen = strlen(pStrNum);
if (0 == nStrLen)
{
return false;
}
char c;
for (int i = 0; i < nStrLen; ++i)
{
c = pStrNum;
if (c < '0' || c > '9')
{
return false;
}
}
return true;
}
int main()
{
char szInput;
scanf("%s", szInput);
if ( IsNum(szInput) )
{
printf("Is Num\n");
}
else
{
printf("Is Not Num\n");
}
return 0;
} 橙C 发表于 2017-12-5 19:40
谢谢!
页:
[1]