isdigit(✀5✀)结果为0为什么错

2024-11-09 00:50:03
推荐回答(5个)
回答1:

你传递的参数不对哦, int isdigit(int c)
传入的参数是 0~9 时, 才会返回值为 0, 但是 '5' 是字符, 根据 ASCII 码表知道你写的相当于 isdigit(53), 不在 0~9 范围内, 所以结果是非零值

回答2:

int isdigit(char c)
检查参数c是否为阿拉伯数字0到9。
若参数c为阿拉伯数字,则返回TRUE,否则返回NULL(0)。
所以
isdigit('5')应该是返回TRUE,也就是1

回答3:

函数 isdigit(ch) 就是问 ch 是数字吗?如果是结果为1,否则结果为0,
而'5'是一个字符,而不是数字5,所以你说结果应该为什么呢

回答4:

isdigit是判断字符是否是数字的,5是数字所以是对的 即1返回

回答5:

结果应该是1.

isdigit函数是这么工作的:

int isdigit(int c)
{
     return c>='0'&&c<='9';   
}

错误的原因就不得而知了.