c语言操作符总结

操作符

分类:

  • 算术操作符
  • 移位操作符
  • 位操作符
  • 赋值操作符
  • 单目操作符
  • 关系操作符
  • 逻辑操作符
  • 条件操作符
  • 逗号表达式
  • 下标引用、函数调用和结构成员

1. 算数操作符:

  • + - * / %

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

2. 位移操作符:

  • << 左移操作符
  • >> 右移操作符

(1)位移操作符移动的是二进制位。
(2)左移操作符 移位规则: 左边抛弃、右边补0。
(3)右移操作符 移位规则:
①逻辑移位 左边用0填充,右边丢弃
② 算术移位 左边用原该值的符号位填充,右边丢弃。
⚠ : 对于移位运算符,不要移动负数位,这个是标准未定义的。

3.位操作符:

  • & 按位与
  • | 按位或
  • ^ 按位异或 (按二进制位
    (注:他们的操作数必须是整数。)
    (1)&: 有一个0为0,都为1则为1。
    (2)| :有一个1为1,都为0则为0。
    (3)^:相同为0,相异为1。

4.赋值操作符:
(1)可连续赋值。
(2)复合赋值符:

  • += 、 -= 、*= 、 /= 、 %= 、 >>= 、 <<= 、 &= 、 |= 、 ^=

5.单目操作符:

  • ! 逻辑反操作 、
  • - 负值
  • + 正值
  • & 取地址
  • sizeof 操作数的类型长度(以字节为单位)
    (注:sizeof为操作符,strlen为函数)
  • ~ 对一个数的二进制按位取反
  • - - 前置、后置- -
  • ++ 前置、后置++
    (注:前置为先自增/自减后使用,后置为先使用后自增/自减)
  • *间接访问操作符(解引用操作符)
  • (类型) 强制类型转换

6.关系操作符

  • >
  • >=
  • <
  • <=
  • != 用于测试“不相等”
  • == 用于测试“相等”
    ( 注意: 在编程的过程中== 和=不小心写错,导致的错误)

7.逻辑操作符

  • && 逻辑与
    (注:左边为假,右边不算;左边为真,右边算)
  • || 逻辑或
    (注:左边为真,右边不算;左边为假,右边算)

8.条件操作符

  • exp1 ? exp2 : exp3
    (例:
    if (a > 5)
    b = 3;
    else
    b = -3;
    用条件操作符表示:a>5 ? 3 : -3

9.逗号表达式

  • exp1, exp2, exp3, …expN
    (1)逗号表达式,就是用逗号隔开的多个表达式。
    (2)逗号表达式,从左向右依次执行。
    (3)整个表达式的结果是最后一个表达 式的结果。

10.下标引用、函数调用和结构成员

  • [ ] 下标引用操作符 (操作数:一个数组名 + 一个索引值)
    (例:arr[9] ,[ ]的两个操作数是arr和9)

  • ( ) 函数调用操作符 (接受一个或者多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数的参数)

  • 访问一个结构的成员:
    . 结构体.成员名
    -> 结构体指针->成员名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值