c语言编程问题 关于isdigit函数

如图 为什么这两题答案是那样的呢?
2024-11-09 00:30:23
推荐回答(1个)
回答(1):

isdigit(x) -- 它测定 x 是不是 字符 0,1,2,3...9 之一,如果是,返回 非 0 的值,就是“真”。
它实际上测定 x 的 ASCII 值 是否在 0x30到0x39 之间。

'5' - 3 等于 '2', '2' 是 字符2,数值0x32, 所以得“真”, “真”就是“返回 非 0 的值”

'5' - '3' 等于 数值 2,不是 字符2,isdigit 返回“假”,“假”值打印出来是 0。