C语言运算符

一、算数运算符

1、+

  • 把两个数值相加

2、 -

  • 第一个数减去第二个数

3、*

  • 把两个数相乘

4、/

  • 分子除以分母

5、%

  • 取模运算符,整除后的余数

6、++

  • 自增运算符,整数值增加1

7、- -

  • 自减运算符,整数值减1

二、关系运算符

1、==

  • 检查两个数值是否相等,如果相等则条件为真

2、!=

  • 检查两个数值是否相等,如果相等则条件为假

3、>

  • 检查左边数值是否大于右边数值,如果是则条件为真

4、<

  • 检查左边数值是否小于右边数值。如果是则条件为真

5、>=

  • 检查左边数值是否大于或者等于右边数值,如果是则条件为真

6、<=

  • 检查左边数值是否小于或者等于右边数值,如果是则条件为真。

三、逻辑运算符

1、&&

  • 逻辑与运算符,如果两个数都为非零,则条件为真

2、||

  • 逻辑或运算符,如果两个数有任意一个非零,则条件为真

  • 逻辑非运算符,用来逆转操作数的逻辑状态,如果条件为真,则逻辑非运算符将使其为假

四、位运算符

  • 按位运算符一共有6个,分别为:& 按位与、| 按位或、^ 按位异或、~ 取反、>> 右移、<< 左移。

1、& 按位与

  • 按位与是二元运算符,运算中对应的数都为1则结果为1,任意一个数为0,则结果为0。
    例子:
    0x01 & 0x03
    0x01二进制位 0000 0001,
    0x03二进制位 0000 0011,
    两个&之后结果为:0000 0001,为 0x01

2、| 按位或

  • 按位或是二元运算符,运算中有任意一个数为1则结果为1。
    例子:
    0x01 | 0x03
    0x01二进制位 0000 0001,
    0x03二进制位 0000 0011,
    两个 | 之后的结果为:0000 0011,为0x03

3、^ 按位异或

  • 按位异或是二元运算符,运算中两个数都为0或者都为1则结果为0。
    例子:
    0 1 0 0 0 0 0 1
    0 1 0 1 1 0 1 0
    结果为 0 0 0 1 1 0 1 1
  • 用来翻转,相同异或为0,不同异或为1.
  • 0与任何数异或之后结果都保留原值。

4、~ 取反

  • ~ 是对位取反,1变为0,0变为1

5、位移运算符

  • << 向左移动,>> 向右移动,超过的位将丢失,而空出的位则补0
    例子:
    67(十进制)>> 2 和 << 2
    67二进制为:0 1 0 0 0 0 1 1
    右移2位为:0 0 0 0 1 1 0 0 十进制为12
    左移2位为:0 0 0 1 0 0 0 0 十进制为16

五、赋值运算符

1、=

  • 把右边的值赋值给左边,C=A+B

2、+=

  • 加且赋值运算符,把左边的数加上右边的数结果再赋值给左边的操作数
  • C += A 相当于 C = C + A

3、-=

  • 减且赋值运算符,左边的数减去右边的数结果再赋值给左边的操作数
  • C -= A 相当于 C = C - A

4、*=

  • 乘且赋值运算符,左边的数乘以右边的数再赋值给左边的操作数
  • C *= A 相当于 C = C * A

5、/=

  • 除且赋值运算符,左边的数除以右边的数值再赋值给左边的操作数
  • C /= A 相当于 C = C / A

6、%=

  • 求模且赋值运算符,两个数值的数值求模再赋值给左边的操作数
  • C %= A 相当于 C = C % A

7、<<=

  • 左移且赋值运算符
  • C <<= 2 相当于 C = C << 2

8、>>=

  • 右移且赋值运算符
  • C >>=2 相当于C = C >> 2

9、&=

  • 按位与且赋值
  • C &= 2 相当于 C = C & 2

10、^=

  • 按位异或且赋值运算符
  • C ^= 2相当于 C = C ^ 2

11、|=

  • 按位或且赋值运算符
  • C |= 2 相当于 C = C | 2

六、条件运算符(?:)

  • 条件表达式:表达式1?表达式2:表达式3
  • 表达式1成立时,执行表达式2,表达式2的结果就是这个条件表达式的结果;表达式1不成立时,执行表达式3,表达式3的结果就是这个条件表达式的结果。
  • 4
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值