不同类型数据间的混合运算
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
不同类型数据间的混合运算
规律为:
(1)+,—,*,/运算的两个数中有一个为float或double型,结果是double型,因为系统将所有float型数据都先转换为double型,然后进行运算。
(2)如果int型与float或double型数据进行运算,先把int型和float 型数据转换为double型,然后进行运算,结果是double型。
(3)字符(char)型数据与整型数据进行运算,就是把字符的ASCII 代码与整型数据进行运算。字符型可以直接与整型数据进行运算。如果字符型数据与实型数据进行运算,则将字符的ASCII代码转换为double型数据,然后进行运算。
分析下面的表达式,假设已指定i为整型变量,值为3,f为float型变量,值为2.5,d为double型变量,值为7.5.
10+‘a’+i*f-d/3
编译时,从左至右扫描,运算次序为:
①进行10+‘a’的运算,‘a’的值是整数97,运算结果为107.
②由于“*”比“+”优先级高,先进行i*f的运算。先将i与f都转
成double型,运算结果为7.5,double型。
③整型107与i*f的积相加。先将整型107转换为双精度数,相加结
果为114.5,double型。
④进行d/3的运算,先将3转换为double型,d/3结果为2.5,double
型。
⑤将10+‘a’+i*f的结果114.5与d/3的商2.5相减,结果为112.0,
double型。