一段代码的加减类型转换

img


为什么输出是这样,u+i等于那么大数字,还有u1-u2,其中区别是有符号和无符号

当一个算术表达式中既有无符号又有int值时,那个int值就会转换成无符号数;

在第一个输出表达式里,两个(负)整数相加并得到了期望的结果。在第二个输出表达式里,相加首先把整数-42转换成无符号数。把负数转换成无符号数类似于直接给无符号数赋一个负值,结果等于这个负数加上无符号数的模。

同一个问题已经回复了啊,有符号下的负数在无符号时是很大的数,因为最高位是1