原创 C语言优先级

2007-8-14 22:06 2080 5 5 分类: 软件与OS
1、C语言优先级顺口溜

醋坛酸味灌

味落跳福豆

共44个运算符

-初等,4个: ( ) [ ] -> 指向结构体成员 . 结构体成员
-单目,9个: ! ~ ++ -- -负号 (类型) *指针 &取地址 sizeof长度
-算术,5个: * / % + -减
-位移,2个: << >>
-关系,6个: < <= > >= == 等于 != 不等于
-位逻,3个: & 按位与 ^ 按位异或 | 按位或
-逻辑,2个: && 逻辑与 || 逻辑或
-条件,1个,三目: ? :
-赋值,11个: = += -= *= /= %= >>= <<= &= ^= |=
-逗号,1个: ,

结合方向自右向左的只有三类:赋值、单目和三目
同一优先级的运算顺序由结合方向决定

2、C语言优先级列表

点击看大图

              Turbo C运算符的优先次序
━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━

                    表达式                              ┃优先级

────────────────────────────╂────
  ()(小括号) [](数组下标) .(结构成员)
->(指针型结构成员)┃ 最高
────────────────────────────┃  ↑
 !(逻辑非) .(位取反) -(负号)
++(加1) --(减1) &(变量地址)┃  │
────────────────────────────┃  │
  
*(指针所指内容)  type(函数说明)  sizeof(长度计算)    ┃  │
────────────────────────────┃  │

     *(乘)     /(除)     %(取模)                        ┃  │

────────────────────────────┃  │
     +(加)    
-(减)                                    ┃  │
────────────────────────────┃ 

     <<(位左移)          >>(位右移)                     ┃  │

────────────────────────────┃  │
     <(小于)   <=(小于等于)  
>(大于)   >=(大于等于)    ┃  │
────────────────────────────┃  │
    
==(等于)       !=(不等于)                          ┃  │

────────────────────────────┃  │
    
&(位与)                                            ┃  │

────────────────────────────┃  │
    
^(位异或)                                          ┃  │

────────────────────────────┃  │
    
|(位或)                                            ┃  │

────────────────────────────┃  │
    
&&(逻辑与)                                         ┃  │

────────────────────────────┃  │
    
||(逻辑或)                                         ┃  │

────────────────────────────┃  │
    
??表达式)                                        ┃  │

────────────────────────────┃  │
     =    +=  
-=(联合操作)                             ┃  │
────────────────────────────┃  │

     ,(逗号运算符)                                      ┃ 最低

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━





文章评论0条评论)

登录后参与讨论
我要评论
0
5
关闭 站长推荐上一条 /2 下一条