不同类型数据之间混合运算时
低级别的类型转换为高级别类型。如下图所示
赋值时类型转换
- 实型数赋值给整型变量时除去小数部分。仅将整数部分赋给整型变量,超出范围报错。
- 整型数赋值给实型变量时,将整型变成实型后再赋值给实型变量。
- 将少字节整型数据赋值给多字节整型变量时,将少字节放置在多字节整型低位字节,高位扩展少字节整型符号位。
- 将字符型赋值给整型变量,分为:
对无符号字符型,放置在整型低位,高位字节补0,
对有符号字符型,放置在整型低位,高位字节扩展符号位。
强制类型转换
int m=10,n=4;
float x = m/n; //2.0 取商运算符两边都为int,计算结果也为int
float y = (float)m/n; //2.5 取商运算符一边都为float,计算结果也为float