首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C/C++ 運算符優先級與結合性完整速查表

     編輯:關於C語言

優先級表(從高到低)

優先級運算符說明結合性
1::作用域解析左→右
2() [] -> . ++ --函數調用、下標、成員訪問、後置遞增/遞減左→右
3++ -- + - ! ~ (type) * & sizeof前置遞增/遞減、一元正負、邏輯非、按位取反、類型轉換、解引用、取址、sizeof右→左
4.* ->*成員指針左→右
5* / %乘除模左→右
6+ -加減左→右
7<< >>左移、右移左→右
8< <= > >=關係比較左→右
9== !=相等/不等左→右
10&按位與左→右
11^按位異或左→右
12|按位或左→右
13&&邏輯與左→右
14||邏輯或左→右
15?:三元條件右→左
16= += -= *= /= %= &= ^= |= <<= >>=賦值及複合賦值右→左
17,逗號運算符左→右

常見易錯點提示

  • a = b = c 等價 a = (b = c)(右結合)。
  • p->m++ 為 (p->m)++,非 p->(m++)。
  • &a == b 實為 &(a == b) ⚠️ 應寫 (&a) == b。
  • sizeof int 錯誤,必須 sizeof(int) 或 sizeof expr。
  • 邏輯運算符 && || 具有短路求值特性,按位運算符 & | 無短路。

最佳實踐

  1. 不確定時加括號,寧可冗餘不可出錯。
  2. 複雜表達式拆分為多行中間變量,提升可讀性與可除錯性。
  3. 代碼審查時重點檢查優先級陷阱區。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved