1、当一个表达式既有无符号类型又有int值,那个int值就会转换成无符号数
unsigned u=10;
int i=-42;
cout<<i+i<<endl; //输出-84
cout<<u+i<<endl;
//整数-42首先转化为无符号数
//如果int占32位,输出4294967264
2、当从无符号数减去一个负值时,不管这个数是不是无符号数,我们都必须确保答案不能是负值
unsigned u1=42,u2=10;
cout<<u1-u2<<endl; //正确,输出32
cout<<u2-u1<<endl; //正确,不过是取模后的值
3、循环写法
//错误,死循环
for(unsigned u=10;u>=0;--u)
cout<<u<<endl;