运算优先级、类型转换

本文介绍了混合运算中数据类型的自动及显式转换原则,包括算术运算符、关系运算符等的基本转换规则,并举例说明了不同类型数据之间的转换过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

运算优先级、类型转换

 运算符优先级


混合运算时数据类型的转换

  一些二元运算符(算术运算符、关系运算符、逻辑运算符、位运算符和赋值运算符)要求两个操作数的类型一致。

  在算术运算和关系运算中如果参与运算的操作数类型不一致,编译系统会自动对数据进行转换(即隐含转换),基本原则是将低类型数据转换为高类型数据。

 



  将一个非布尔类型的算术值赋给布尔类型时,算术值为0则结果为false,否则结果为true。

  将一个布尔值赋给非布尔类型时,布尔值为false则结果为0,布尔值为true则结果为1

  将一个浮点数赋给整数类型时,结果值将只保留浮点数中的整数部分,小数部分将丢失。

  将一个整数值赋给浮点类型时,小数部分记为0。如果整数所占的空间超过了浮点类型的容量,精度可能有损失。

 

混合运算时数据类型的转换——显式转换

  显式类型转换的作用是将表达式的结果类型转换为类型说明符所指定的类型。

  语法形式

  类型说明符(表达式)

  (类型说明符)表达式

  类型转换操作符<类型说明符>(表达式)

  类型转换操作符可以是:
const_cast
、dynamic_cast、reinterpret_cast、static_cast

  例:int(z), (int)z, static_cast<int>(z)
三种完全等价



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值