各类数值类型之间的混合运算、强制转换、算术运算符和算术表达式

各类数值类型之间的混合运算:

变量的类型是可以进行转换的,在之前的博客里面也写过,数据类型的转换有两种:一种是隐式转换(自动转换),另一种则是显式转换(强制转换 ),一般的数据运算都是系统自动进行隐式转换 。

隐式转换遵循以下规则

  1. 数据类型不一样的时候,先转换成同一类,再进行运算。
  2. 转换按数据长度增加的方向进行,例如int型和long型进行运算,先将int型转换为long型再进行运算。
  3. 所有的浮点运算都以双精度进行运算,即便是只含float单精度的也要先转换成double型再进行运算。
  4. char型跟short型参与运算时,必须先转换成int型。(cpu通常是32位跟64位,但系统有的时候是32位,所以运行的时候还是按照32位的来。)
  5. 在进行赋值运算的时候,赋值号右边的数据类型会先转换成左边的数据类型再进行运算。如果右边的数据类型精度更高,那么会折损掉一部分的数据,降低精度,丢失的部分按四舍五入向前舍入。

下图是类型自动转换的规则示图:
在这里插入图片描述
接下来,来感受以下这方面的相关程序案列:
【5.1】

#include <stdio.h>

void main()
{
   float PI = 3.14159;
   int s,r = 5;
   s = PI*r*r;
   printf("s=
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值