关于C语言中各类操作符及其运算顺序和优先级

C语言的各种操作符在我们的日常使用中必不可少,下面我们先介绍一下都有哪些操作符号。

操作符号

语言中的操作符(Operators)是用来执行特定的数学和逻辑计算的符号。在C语言中,操作符可以分为几个不同的类别:

  1. 算术操作符:

    • +:加法
    • -:减法
    • *:乘法
    • /:除法
    • %:取模(求余数)
  2. 关系操作符:

    • ==:等于
    • !=:不等于
    • >:大于
    • <:小于
    • >=:大于或等于
    • <=:小于或等于
  3. 逻辑操作符:

    • &&:逻辑与
    • ||:逻辑或
    • !:逻辑非
  4. 位操作符:

    • &:按位与
    • |:按位或
    • ^:按位异或
    • ~:按位取反
    • <<:左移
    • >>:右移
  5. 赋值操作符:

    • =:基本赋值
    • +=:加后赋值
    • -=:减后赋值
    • *=:乘后赋值
    • /=:除后赋值
    • %=:取模后赋值
    • <<=:左移后赋值
    • >>=:右移后赋值
    • &=:按位与后赋值
    • ^=:按位异或后赋值
    • |=:按位或后赋值
  6. 条件操作符:

    • ?::三元条件操作符,格式为 条件 ? 表达式1 : 表达式2,如果条件为真,则结果为表达式1,否则为表达式2。
  7. 递增和递减操作符:

    • ++:递增操作符,可以作为前缀(++i)或后缀(i++)
    • --:递减操作符,也可以作为前缀(--i)或后缀(i--)
  8. 逗号操作符:

    • ,:逗号操作符用于分隔多个表达式,它会按照从左到右的顺序依次计算每个表达式,但整个逗号表达式的值是最右边表达式的值。
  9. sizeof操作符:

    • sizeof:一元操作符,返回一个对象或类型所占的字节数。
  10. 指针操作符:

    • *:间接寻址或解引用操作符
    • &:取地址操作符
  11. 强制类型转换操作符:

    • (type):将一个值强制转换为type指定的类型。

操作符在C语言中是构建表达式的基础,理解和正确使用这些操作符对于编写有效的C程序至关重要。

这里给出一张思维导图方便大家收藏:

运算顺序

接下来我们说一下其运算的优先级(其优先顺序为从高到低):

  1. 后缀操作符:() 函数调用、[] 数组下标、. 结构体成员访问、-> 结构体指针成员访问、++ 后缀递增、-- 后缀递减
  2. 一元操作符:++ 前缀递增、-- 前缀递减、+ 正号、- 负号、! 逻辑非、~ 按位取反、(type) 强制类型转换、* 解引用、& 取地址、sizeof_Alignof
  3. 乘除法:* 乘法、/ 除法、% 取模
  4. 加减法:+ 加法、- 减法
  5. 位移操作符:<< 左移、>> 右移
  6. 关系操作符:< 小于、<= 小于等于、> 大于、>= 大于等于
  7. 相等性操作符:== 等于、!= 不等于
  8. 按位与:&
  9. 按位异或:^
  10. 按位或:|
  11. 逻辑与:&&
  12. 逻辑或:||
  13. 条件操作符:?:
  14. 赋值操作符:=+=-=*=/=%=<<=>>=&=^=|=
  15. 逗号操作符:, 
  • 结合性

  • 结合性是指当两个具有相同优先级的操作符出现在同一个表达式中时,操作的顺序是如何决定的。
  • 各类操作符的结合性

  • 大多数操作符的结合性是从左到右,这意味着当出现多个相同优先级的操作符时,会从左边开始计算。但是,赋值操作符和一些一元操作符的结合性是从右到左,也就是说,它们会从表达式的右边开始计算 。                                                                                                               
  • 12
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

矢鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值