各类数值型数据间如何混合运算?

2023-05-16

整型(包括int,short,long)、实型(包括float,double)可以混合运算。前已述及,字符型数据可以与整型通用,因此,整型、实型、字符型数据间可以混合运算。例如:
10+'a'+1.5-8765.1234 *'b'
是合法的。在进行运算时,不同类型的数据要先转换成同一类型,然后进行运算。转换的规则按图3.10所示。

图3.10

图中横向向左的箭头表示必定的转换,如字符数据必定先转换为整数,short型转换为int型,float型数据在运算时一律先转换成双精度型,以提高运算精度(即使是两个float型数据相加,也先都化成double型,然后再相加)。
纵向的箭头表示当运算对象为不同类型时转换的方向。例如int型与double型数据进行运算,先将int型的数据转换成double型,然后在两个同类型(double型)数据间进行运算,结果为double型。注意箭头方向只表示数据类型级别的高低,由低向高转换。不要理解为int型先转换成unsigned int型,再转成long型,再转成double型。如果

 一个int型数据与一个double型数据运算,是直接将int型转成double型。同理,一个int型与一个long型数据运算,先将int型转换成long型。
换言之,如果有一个数据是float型或double型,则另一数据要先转换为double型,运算结果为double型。如果参加运算的两个数据中最高级别为long型,则另一数据先转换为long型,运算结果为long型。其他依此类推。
假设已指定i为整型变量,f为float变量,d为double型变量,e为long型,有下面式子:
   10+'a'+i*f-d/e

在计算机执行时从左至右扫描,运算次序为:
①进行10+‘a’的运算,先将‘a’转换成整数97,运算结果为107。
②由于“*”比“+”优先,先进行i*f的运算。先将i与f都转成double型,运算结果为double型。
③整数107与i*f的积相加。先将整数107转换成双精度数(小数点后加若干个0,即107.000…00),结果为double型。
④将变量e化成double型,d/e结果为double型。⑤将10+'a'+i*f的结果与d/e的商相减,结果为double型。
上述的类型转换是由系统自动进行的。

转自:http://202.195.237.152/ec/C141/no3/right3-2-5.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

各类数值型数据间如何混合运算? 的相关文章

随机推荐

  • 无名创新无人机调试架——多旋翼调试平台(萌新炸机终结者)

    产品说明 xff1a 无名创新无人机调试架适用机型范围主要为F330 F450 S500也可以兼容轴距在500mm 以内的各种机型 xff0c 适用更大轴距的飞机需要定制 xff01 调试架支撑框架采用的是国标工业铝型材 xff0c 强度高
  • 无名创新——2019年TI杯电赛飞行器赛题关键问题汇总

    从2018年12月以来 xff0c 无名创新TI飞控累计服务了全国高校累计超400个电赛飞行器学生团队 xff0c 无名创新TI系列产品根据客户反馈 市场需求 xff0c 完成了一次次软硬件迭代升级 xff0c 比赛临近 xff0c 针对近
  • Ubuntu20.04安装gazebo11报错

    在这记录下安装gazebo11的报错解决方案 xff0c 本人遇到问题的过程 xff1a 我在安装gazebo11后又卸载了全部相关的东西 xff0c 然后用命令sudo apt upgrade升级了下Ubuntu20 04里的一些东西 x
  • Linux上安装npm最新版

    首先 npm是随同NodeJS一起安装的包管理工具 基本信息 1 NPM Node Package Manager 即node包管理器 是用Javascript编写 最初由Isaac Z Schlueter开发 它会随着node js一起安
  • sphinx文档生成脚手架工具安装和使用

    1 sphinx的安装与使用 1 1 安装sphinx sphinx官方安装说明 xff1a Installing Sphinx Sphinx documentation readthedoc官方说明 xff1a Getting Start
  • 常用的PCB供电电路,电源芯片,看看有没有你需要的

    供电电路 xff0c 是PCB都要用到的 xff0c 是PCB的能量来源 电源芯片种类繁多 xff0c 供电方案各式各样 xff0c 在PCB设计中该怎样选择 xff0c 本文将详细描述 首先 xff0c 供电电路设计 xff0c 基本要考
  • px4固件源码分析(文件夹作用以及总体架构)

    px4固件源码分析 文件夹作用以及总体架构 总体概述总体构架代码分块总结分析 总体概述 px4是一个操作系统 xff0c 其中运行着很多程序 类比windows 比如我们十分感兴趣与关心的姿态解算 位置解算 姿态控制 位置控制等 每一个程序
  • 程序员生涯之生活篇

    作为一名非正规的程序员菜鸟 xff0c 我没有什么职场沉淀 xff0c 也没有开阔的视野 xff0c 只是读了几篇博文与时讯 xff0c 有所感触 xff0c 想要记录一下自己的想法与体会 xff0c 暂定为程序员生涯之生活篇 首先介绍一下
  • 大数据领域的Benchmark介绍

    一 Benchmark简介 Benchmark是一个评价方式 xff0c 在整个计算机领域有着长期的应用 正如维基百科上的解释 As computer architecture advanced it became more difficu
  • 关于ROS包中CMakeList.txt中几个常用的命令的作用 ——————(一)

    目录 xff08 1 xff09 find package catkin REQUIRED COMPONENTS 2 include directories 3 add executable src1 src2 xff08 简易写法 xff
  • 【Kubernetes系列】K8s更新镜像的几种方法

    目录 一 准备二 更新镜像1 方法一 xff1a 修改 yaml 文件版本号并执行2 方法二 xff1a 使用 set image3 方法三 xff1a 使用 patch 一 准备 以下以前端的服务为例 xff0c 前端 yaml 文件内容
  • Java中toString的使用

    在java中 xff0c 所有对象都有toString 这个方法 xff0c 因为它是Object里面已经有了的方法 xff0c 而所有类都是继承Object xff0c 所以 所有对象都有这个方法 它通常只是为了方便输出 xff0c 比如
  • Linux安装时至少划分哪两个分区才能正常安装使用

    根 xff08 boot xff09 分区和SWAP分区
  • C#界面动态布局 界面控件随着界面大小尺寸变化而变化

    要想写一个漂亮的界面 xff0c 光靠利用Anchor和Dock属性是远远不够的 xff0c 我们需要用到相对布局 xff0c 就是不管窗口大小怎么变化 xff0c 控件相对父控件的相对位置保持不变 可惜c 里没有提供按照百分比布局 所以只
  • 一个简单的Dockerfile

    一个简单的Dockerfile xff0c 如下 xff1a FROM golang span class token comment 基础镜像 span COPY print num go root span class token co
  • c++ 构造函数后面加冒号

    有四种情况下应该使用初始化表达式来初始化成员 xff1a 1 xff1a 初始化const成员 常量必须在构造函数的初始化列表中初始 xff0c 或将其设为static Wrong Class A const int size 61 0 R
  • PX4程序编译过程解析

    第一章 PX4程序编译过程解析 PX4是一款软硬件开源的项目 xff0c 目的在于学习和研究 其中也有比较好的编程习惯 xff0c 大家不妨可以学习一下国外牛人的编程习惯 这个项目是苏黎世联邦理工大学的一个实验室搞出来的 该方案是基于NUT
  • Git使用之——冲突解决一(git merge conflict)

    Git冲突是在多用户协同工作下出现 xff0c 在一些情况下Git可以智能自动合并 xff0c 但有时需要用户手动合并 xff08 本文链接 xff1a http blog csdn net u012150179 article detai
  • git fetch 的简单用法:更新远程代码到本地仓库

    Git中从远程的分支获取最新的版本到本地方式如下 xff0c 如何更新下载到代码到本地 xff0c 请参阅ice的博客基于Github参与eoe的开源项目指南 方式一 1 查看远程仓库 1 2 3 4 5 6 git remote v eo
  • 各类数值型数据间如何混合运算?

    整型 包括int xff0c short xff0c long 实型 包括float xff0c double 可以混合运算 前已述及 xff0c 字符型数据可以与整型通用 xff0c 因此 xff0c 整型 实型 字符型数据间可以混合运算