一个问题,关于unsigned int 和 int相加的类型转换问题???
unsigned int a = 20;
int b = -80;
输出a+b结果很大,但是如果b=-10,结果就是10,
疑问:如果int为负,最高位符号位肯定有一个一,怎么加最高位都有一个一啊,为什么还有正常输出的时候???
[解决办法]
你可以查看-10的二进制,他加20后肯定溢出了,最高位没有了,因为无符号和有符号运算是按无符号来运算的。