1.9 C++混合运算 | 输出整数字符浮点数的值

举报
C语言入门到精通 发表于 2021/02/17 01:18:11 2021/02/17
【摘要】 各类数值型数据间的混合运算在C++的表达式中会常常遇到不同数据类型之间的运算,运算过程中,当某个二元运算符两边的操作数类型不同但属于类型相容时,系统先将精度低的操作数变换到与另一个操作数精度相同,然后再进行运算。比如整数+浮点数-字符9+1.5-'a'; 在运算之前,不同的数据类型要先转换为同一数据类型,然后再进行运算。先执行9+1.5,运算之前会将这两个数转换成double类...

各类数值型数据间的混合运算

在C++的表达式中会常常遇到不同数据类型之间的运算,运算过程中,当某个二元运算符两边的操作数类型不同但属于类型相容时,系统先将精度低的操作数变换到与另一个操作数精度相同,然后再进行运算。

比如整数+浮点数-字符

9+1.5-'a';

在运算之前,不同的数据类型要先转换为同一数据类型,然后再进行运算。

先执行9+1.5,运算之前会将这两个数转换成double类型的值,此时值应该时10.5

然后执行10.5+'a',a在ASCII码表里面的值是97,因此在运算之前会将a的值先转换为97,然后都转换为double类型再进行运算,最后输出结果。

C++混合运算类型转换规则:


字符可以作为整数参与数值运算,整数值为其在ASCII码表对应的数值。

操作数为字符或短整型时,系统自动转换成整型。

操作数为实型时,系统自动转换成双精度型。

当两数操作数类型不同时,将精度低的操作数的数据类型变换到与另一操作数类型相同再进行运算。


案例:输出整数,浮点数,字符9+1.5-'a'混合运算的值。

#include<iostream>
using namespace std;
int main() //主函数
{
  cout<<9+1.5-'a'<<endl;
  return 0;
}

执行本程序之后,则会输出-86.5。

类型转换是由系统自动进行的.

1.9 C++混合运算 | 输出整数字符浮点数的值 mp.weixin.qq.com

文章来源: zhuanlan.zhihu.com,作者:,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuanlan.zhihu.com/p/324743750

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。