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

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

     編輯:關於C++

優先級表(高 → 低)

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

易混淆重點

  • 前置 vs 後置:++i 返回左值(可作左值),i++ 返回右值(臨時量,不可作左值)。
  • 位運算優先級低於關系:a & b == c 等價於 a & (b == c),需加括號 (a & b) == c。
  • 賦值優先級高於逗號:a = b, c 等價於 (a = b), c。
  • 邏輯運算符短路:&&、|| 遇確定結果停止求值。

整型提升與常見轉換

  • char/short/bool 參與運算先提升為 int。
  • 有符號與無符號同寬度運算 → 無符號運算(有符號隱式轉無符號)。
  • -52 的二進制(補碼):52→00110100,取反→11001011,+1→11001100。

進制轉換口訣

  • 十進制→二進制:除 2 取餘,逆序排列。
  • 十進制→十六進制:除 16 取餘,逆序排列(10~15 為 A~F)。
  • 二進制/十六進制→十進制:按權展開求和。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved