以下结果让我感到非常困惑:
int i1 = 20-80u; // -60
int i2 = 20-80; // -60
int i3 =(20-80u)/2; // 2147483618
int i4 =(20-80)/2; // -30
int i5 =i1/2; // -30
i3
看起来是计算为(20u-80u)/2
,而非(20-80u)/2
- 据说
i3
和i5
是相同的。