一、实例
1、float --> int
①、强制转换
去尾法,即直接去掉小数点后的部分
直接将float变量赋值给int型变量
例:
②、四舍五入
如果是输出,可以直接用%.0f,即保留0位小数输出
如果是中间运算,可以用<math.h>里面的round函数
例:
2、int–>float
同上,用赋值运算符直接把int型赋值给float型即可
如果是中间运算需要转换,用1.0乘它即可
3、char --> int
char型转换成int型,会转换成它的ASCII码
例:
这种转化规则的存在,使char型可以进行加减运算
例:
即 ‘<’+‘A’=’}’
'<'的ASCII码为60,‘A’的ASCII码为65,’}'的ASCII码为125
这种转换经常使用在将一串char型的数字转化为int型
比如题目要求一次读入一串数字,我们采用char数组读入,然后将他们转化成int型,可能会使计算简便
例:
4、int --> char
转化成对应的ASCII码为该int值的字符
例:
二、总结
1、如果参与运算的变量类型不同,则先转换成同一类型,然后进行运算。
2、转换按数据长度增加的方向进行,数据精度不得减少,如:int 和 float 运算,转换成float
3、字节数不同,转换成字节数更长的数据类型,如:int 和 long long 转换成 long long
4、字节数相同,有符号型转换成无符号型,如:int 和 unsigned int 转换成unsigned int
5、赋值运算符(=),等号右边的计算完成后转换成等号左边的