栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

[C语言]--迟到的操作符...

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

[C语言]--迟到的操作符...

操作符分类

1.算术操作符 2.移位操作符 3.位操作符 4.赋值操作符 5.单目操作符

6.关系操作符 7.逻辑操作符 8.条件操作符 9.操作符优先级

目录

​操作符分类

一:算术操作符

二: 移位操作符

<< 左移操作符

>>右移操作符

 三:位操作符

按位与 &

按位与 |

按位异或

四:赋值操作符

五: 单目操作符

六:关系操作符

七: 逻辑操作符

八: 条件操作符(三目操作符)

 九:优先级

 10》》要加油啊!!

 

一:算术操作符

对于算术操作符,大家从小学到大,那就是 + 加  - 减   * 乘   /除  %取余

想必这也不需要解释啦。

 注:

1. 除了 % 操作符之外,其他的几个操作符可以作用于整数和浮点数。
2. 对于 / 操作符如果两个操作数都为整数,执行整数除法。而只要有浮点数执行的就是浮点数除法。
3. % 操作符的两个操作数必须为整数。返回的是整除之后的余数。

二: 移位操作符

移位操作符 有 << 左移操作符 , >> 右移操作符。

对于移位操作符,操作的是二进制位。而且必须是整数。

补码:在计算机系统中,数值一律用补码来表示和存储,其中最高位表示符号位,1表示负数,0表示正数。

正数的原反补相同。

负数:

反码:原码符号位不变,其他位取反。

补码:反码加1。

<< 左移操作符

移位规则:左边抛弃(整体左移一位) 右边补0

int a = 10;
//二进制 
a<<1
//00000000000000000000000000001010
//00000000000000000000000000010100

>>右移操作符

移位规则

1. 逻辑移位
左边用0填充,右边丢弃
2. 算术移位
左边用原该值的符号位填充,右边丢弃

逻辑位移
int a = 10;
//00000000000000000000000000001010
a>>1
//00000000000000000000000000000101
int a = -1;
//11111111111111111111111111111111
a>>1
// 1算术  11111111111111111111111111111111
// 2逻辑  01111111111111111111111111111111

注 :

对于移位操作符 不移动负数位,这是标准未定义的。 a<<-1 这是错的

 三:位操作符

按位与 &

按位或 |

按位异或 ^

注:操作数必须是整数

按位与 &

比较二进制位,同时为1才为1其余为0

举例
A   01010
B   10110
A&B 00010

按位与 |

比较二进制位,只要有1就为1 其余为0

举例
A   010101
B   101001
A|B 111101

按位异或

比较二进制位,相同为0不同为1

举例
A   1101101
B   1001011
A^B 0100110

四:赋值操作符

赋值操作符  = 

复合赋值操作符  +=     -=     *=     /=     %=     >>=     <<=     &=     |=      ^=

int a =10;
a = a+1;
a += 1;//复合运算

五: 单目操作符
!
-
+
&
sizeof
~
--
++
逻辑反操作
负值
正值
取地址
操作数的类型长度(以字节为单位)
对一个数的二进制按位取反
前置、后置--
前置、后置++

*                    间接访问操作符(解引用操作符)
(类型)            强制类型转换

 逻辑反操作符 将 假变为真 真变为假 如 !(a==0)

前置后置-- ++;

前置 先加减再使用 后置 先使用再减加

六:关系操作符

>
>=
<
<=
!= 用于测试“不相等”
== 用于测试“相等”

七: 逻辑操作符

逻辑与 &&  两个数中有一个为假,则判断为假。

逻辑或 || 两个数中有一个为真,则判断为真。

(a && b) (a || b)

八: 条件操作符(三目操作符)

a ? : b : c      a为真执行b为假执行c

 九:优先级
操作
描述用法示例结果类 型结合 性是否控制求值 顺序
()聚组(表达式)与表达
式同
N/A
()函数调用rexp(rexp,...,rexp)rexpL-R
[ ]下标引用rexp[rexp]lexpL-R
.访问结构成员lexp.member_namelexpL-R
->访问结构指针成员rexp->member_namelexpL-R
++后缀自增lexp ++rexpL-R
--后缀自减lexp --rexpL-R
!逻辑反! rexprexpR-L
~按位取反~ rexprexpR-L
+单目,表示正值+ rexprexpR-L
-单目,表示负值- rexprexpR-L
++前缀自增++ lexprexpR-L
--前缀自减-- lexprexpR-L
*间接访问* rexplexpR-L
&取地址& lexprexpR-L
sizeof取其长度,以字节
表示
sizeof rexp sizeof(类
型)
rexpR-L
(类
型)
类型转换(类型) rexprexpR-L
*乘法rexp * rexprexpL-R
/除法rexp / rexprexpL-R
%整数取余rexp % rexprexpL-R
+加法rexp + rexprexpL-R
-减法rexp - rexprexpL-R
<<左移位rexp << rexprexpL-R
>>右移位rexp >> rexprexpL-R
>大于rexp > rexprexpL-R
>=大于等于rexp >= rexprexpL-R
<小于rexp < rexprexpL-R
<=小于等于rexp <= rexprexpL-R
 
操作
描述用法示例结果类 型结合 性是否控制求值 顺序
==等于rexp == rexprexpL-R
!=不等于rexp != rexprexpL-R
&位与rexp & rexprexpL-R
^位异或rexp ^ rexprexpL-R
|位或rexp | rexprexpL-R
&&逻辑与rexp && rexprexpL-R
||逻辑或rexp || rexprexpL-R
? :条件操作符rexp ? rexp : rexprexpN/A
=赋值lexp = rexprexpR-L
+=以...加lexp += rexprexpR-L
-=以...减lexp -= rexprexpR-L
*=以...乘lexp *= rexprexpR-L
/=以...除lexp /= rexprexpR-L
%=以...取模lexp %= rexprexpR-L
<<=以...左移lexp <<= rexprexpR-L
>>=以...右移lexp >>= rexprexpR-L
&=以...与lexp &= rexprexpR-L
^=以...异或lexp ^= rexprexpR-L
|=以...或lexp |= rexprexpR-L
逗号rexp,rexprexpL-R

 10》》要加油啊!!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/866955.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号