cpp primer P31
带符号类型和不带符号类型
1、除去布尔型和扩展字符外,其他整型可以划分为带符号的(signed)和无符号的(unsigned)两种。signed类型可以表示正数、负数或0,无符号类型则仅能表示大于等于0的值。
(unsigned int 可以所写成 unsigned)
2、当我们赋值给无符号类型一个超出他表示范围的值时,结果是初始值对无符号类型表示数值总数取模后的余数。
3、当一个表达式里既有带符号类型又有无符号类型,当带符号类型为负时会出现异常结果,因为带符号数会自动转换成无符号数。
4、把负数转换成无符号数类似于直接给无符号数赋一个负值,结果等于这个负数加上无符号数的模。
写循环的时候,注意循环变量的类型,下面的代码会出现死循环,因为 i永远都不会取到负值
for(unsigned u=10; u>=0 ;u--){
cout<<u;
}