满意答案
yesyesq
推荐于 .05.11
采纳率:40%等级:9
已帮助:1063人
在程序运行中,变量的数据类型是可以转换的,转换方式有两种。
一、自动转换:自动转换发生在不同数据类型的量运算时,由编译系统自动完成。
1.自动转换遵循的规则
(1)若参与运算的量的数据类型不同,则先转换成同一类型,然后进行运算。
(2)转换数据始终往长度增加的方向进行,以确保精确度,如int和long运算,则将int转换为long再运算。
(3)所有的浮点运算都是以双精度(double)进行的,即使仅含有float变量的运算式,也要先转换为double再运算。
(4)char型和short进行运算时,要先转换为int型。
(5)在赋值运算中,赋值号两边的数据类型不同时,将赋值号右边的数据类型转换成左边的类型,结果是如果右边量的数据长度长于左边长度,会使一部分数据丢失,会降低精度,丢失的部分四舍五入。
2.自动转换的运算规则
float →→→→→ double 高级类型
↑
↑ ↑
long ↑
↑ ↑
↑ ↑
unsigned ↑
↑
↑
char,short →→→→→ int 低级类型
P.s横向箭头是运算时必定要进行的转换
如:char必须转换为int才可以运算
float必须转换为double 才能运算
纵向箭头表示当运算对象的类型不同时转换的方向
如char和float运算,是将char转为double后运算
00分享举报
c语言char float混合类型运算 求intlongchardoublefloat在混合运算中的自动转换规则win32位系统。...