#include <iostream>
int main()
{
unsigned u1 = 10;
int i = -42;
std::cout << (unsigned)i << std::endl;
std::cout << i + i << std::endl;
std::cout << u1+ i << std::endl;
return 0;
}
输出如下:
4294967254
-84
4294967264
转换原理:
有符号数加上无符号数的模(最大取值范围)。
Note:模的概念参考:https://baike.baidu.com/item/%E8%A1%A5%E7%A0%81/6854613?fr=aladdin