c++初学者算术运算符及其运算

一、算术运算符

a=5,b=10

运算符符号

解释用法

语法举例

+

加号

a+b=15或a+=b(结果相同,下同)

-

减号

b-a=5或b-=a

*

乘号

a*b=50或a*=b

/

除号

a/b=0.5或a/=b

=

赋值运算符

x=2,将2赋给x

++

自加运算符

a++,结果为6

--

自减运算符

a--,结果为4

二、关系运算符

<,>,<=,>=,==,!=

三、逻辑运算符

A=1,B=0

四、位运算符

位运算符作用于位,并逐位执行操作。&、 | 和 ^ 的真值表如下所示:

位运算

用途

举例

&(按位与)

  1. 将某一位置变0,其余位置不变

  1. 取指定位

【当对应位都是1时则写1,否则为0】

  1. a=a & 0xfe(二进制:1111 1110)

  1. 有char c;int a;0xff;去出a的低字节,置于c中:c=a & 0xff(1111 1111)

^(按位异或)

使特定位翻转

【与0异或保持原值,与1异或取反】

0111 1010 低四位翻转:与0000 1111 异或

|(按位或)

将某些位置1,其他位置不变

【只要有一个1,则该位是1】

int a 低字节置1:a = a|0xff

<<(左移运算)

>>(右移运算)

  1. 左移后,高位舍弃,低位补0

  1. 右移后,高位补0,低位舍弃

【无符号数补0,有符号数补符号数】

sizeof运算

是求一个变量或者一种数据类型所占的字节数

语法形式:sizeof(类型名)或sizeof 表达式

sizeof(short)

sizeof x

五、逗号运算符

举例:a=3*5,a*4,得60

六、条件运算符

举例:x=a<b?a:b,如果a<b,则x=a,否则为b

七、优先级

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

(1)隐含转换

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

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

**低到高

char(unsigned) short(unsigned) int(unsigned) long(unsigned) longlong float double

(2)显式转换

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

语法形式:类型说明符(表达式)

(类型说明符)表达式

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

类型转换操作符可以是:const_cast,dynamic_cast,reinterpret_cast,static_cast(最常用)

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

发布不易,欢迎点赞收藏

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值