#include <iostream>#include <string>#include <cctype>using namespace std;int main(){int i=5;if(!isdigit(i)){cout<<!isdigit(i)<<endl;}cin.get();return 0;}
2 回答
RISEBY
TA贡献1856条经验 获得超5个赞
int isdigit(char c);
注意这里的参数是char,而不是int
其实char类型就是对应的ASCII码的,所以这里相当于是调用isdigit(5),对应ascii码,5不是数字,所以这里是假.应该这样:isdigit('5'),就是真了 .
嗯......这个我不太清楚你的环境,所以不好说.这个函数仅是知道,如果是0-9之间的数字,返回的是非0,其他返回0.而且不同编译器实现的方式还不同,通常这个不是个函数,而是一个宏,所以在用的时候返回什么还是不一定的。
- 2 回答
- 0 关注
- 373 浏览
添加回答
举报
0/150
提交
取消