良辰北辰 发表于 2019-2-19 04:59:01

我想到的S1E10:关系运算符和逻辑运算符a=144分析

本帖最后由 良辰北辰 于 2019-2-19 05:02 编辑

看到a=144 我想到 unsigned char 取值范围是0~255 加上0是256题中说b=c=200a=b+c那就是a=200+200=400。之后400-256=144那256就是甲鱼老师说的多出来的舍弃掉...我没想到进制转换... 还是没学好啊。不知道我这样认为成不成立呢?

行客 发表于 2019-2-19 08:52:03

建议将代码全部贴上来,不清楚具体章节

jackz007 发表于 2019-2-19 11:16:04

    unsigned char 可以表示的数值范围一定是 0 ~ 255,一共 256 个不同的数值,绝不可能包括数值 256 本身。

人造人 发表于 2019-2-19 13:46:17

你可以用另一种思路看这个问题
400 的二进制形式是    1 1001 0000
unsigned char只能保存1个字节,只能保存低8位
只能保存 1001 0000
最高位的 1 丢掉
1001 0000 的十进制形式是 144

200 + 200 = 144
实际是等于 400,但是1个字节没办法保存这么大的数,只能保存低8位,所以就等于 144
页: [1]
查看完整版本: 我想到的S1E10:关系运算符和逻辑运算符a=144分析