如果赋值运算符两侧的类型不一致,但都是算术类型的,在赋值时要进行类型转换。
类型转换是由系统自动进行的,转换规则如下:
(1)将浮点型数据赋给整型变量时,先对浮点数取整,也即舍弃小数部分,然后赋予整型变量。
【例如】int i;
则执行i = 3.56的结果是使i的值为3,以整数形式存储在整型变量中!
(2)将整型数据赋给浮点型变量时,数值不变,但以浮点数形式存储到变量中。
【例如】float f;
则执行f = 23;
先将整数23转换成实数23.0, 在按指数形式存储在变量f中。
double d;
则执行d = 23;
先将整数23转换成双精度实数23.0,然后再以双精度浮点数形式存储到变量d中。
(3)将一个double型数据赋给float型变量时,先将双精度数转换为单精度,也即只取6-- - 7位有效数字,存储到float变量的4个字节中。应当注意双精度数值的大小不能超出float型变量的数值范围。
(4)字符型数据赋给整型变量时,将字符的ASCII码值赋给整型变量。
【例如】int i = ‘A’;
也即赋值后的i为65。