C++类型转换

类型转换:
1、当我们把一个非布尔类型的算术值赋给布尔类型时,初始值为0则结果为false,否则结果为true。
2、当我们把一个布尔值赋给非布尔类型时,初始值为false则结果为0,初始值为true则结果为1。
3、当我们把一个浮点数赋给整数类型时,进行了近似处理。结果值将仅保留浮点数中小数之前的部分。
4、当我们把一个整数值赋给浮点类型时,小数部分记为0。如果该整数所占的空间超过了浮点类型的容量,精度可能有损失。
5、当我们赋给无符号类型一个超出它表示范围的值时,结果是初始值对无符号类型表示数值总数取模后的余数;
把负数转换成无符号数类似于直接给无符号数赋一个负值,结果等于这个负数加上无符号数的模(例如把-1赋给unsigned int时,得到的是4294967295);
当表达式中既有符号类型又有无符号类型,当带符号类型取值为负时会出现异常结果,这是因为带符号数会自动地转换成无符号数。

猜你喜欢

转载自www.cnblogs.com/ACGame/p/8977278.html