c语言高手进X=(int)(str[i]-48);程序标注“将x转换成int型。”我不明白为啥减掉48,str是char型数组!

2025-02-22 12:29:55
推荐回答(2个)
回答1:

因为ASC码48就是'0',也就是说'0'的值是48,而后依次是'1'到'9'。

这样正好是char型减去48就是它对应的int值

不过这样写不好理解,直接写成str[i]-'0'就好。

回答2:

字符的0与数字0的ascii码相差48