失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > C语言·混合运算

C语言·混合运算

时间:2019-05-02 22:58:04

相关推荐

C语言·混合运算

混合运算

缺省事实1

一个十进制小数换算成二进制时可能会变为无限小数,为了不损失精度,计算机默认将float常量转换为double常量处理。

缺省事实2

对于整型常量,计算机会根据其大小,默认作为对应的有符号型整数来处理。

混合运算时,系统会自动转换成同一类型计算。(在编译时已完成)

横向必转,纵向从下到上,本来就是同类型数据之间无需转换。

【注意:

+. -. *. /运算的两个数中有一个数为float或double型,结果是double型,因为系统将所有float型数据都先转换为double型,然后进行运算;若int型与float或double型数据进行运算,先将int型和float型转换为double型,然后进行运算,结果为double型;Char型与int型数据进行运算,就是把字符的ASCII码与整型数据进行运算;

如:12+‘A’=12+65=77

————————————————

版权声明:本文为CSDN博主「Fengjingdisan」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:/fengjingdisan/article/details/76358642

此段转载于博主Fengjingdisan】

陷阱

整数除整数答案也是整数,答案是0.

unsigned int - unsigned int =unsigned int

后缀

警告是因为机器把0.2当成double(8)来处理,把0.2放进float(4)里等于只有前六或七位是有效数字。

原本计算机按照double处理的,加了后缀后按照后缀的常量处理。(后缀尽量大写

限制0.2只能是float型常量,左右匹配,就不会出现警告。

不是等于0.0000是因为第一行的1.2是double型切断放进float型,第二行的1.2是double型,float-double和同类减同类等于零不一样,所以不是0.0000。

图片截取自中国慕课零基础学C语言

如果觉得《C语言·混合运算》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。