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

C語言運算符與表達式完全手冊:優先級、結合性、類型轉換一網打盡

     編輯:C 語言入門

運算符是構建表達式的基石。本文系統整理 C 語言 10 大類運算符、15 級優先級、結合性規則、強制轉換與自增自減細節,附帶基本類型分類與常量後綴速查,適合初學夯實基礎、老手快速查閱。

十大運算符分類

類別運算符數量
算術`+` `-` `*` `/` `%` `++` `--`7
關係`>` `<` `==` `>=` `<=` `!=`6
邏輯`&&` `||` `!`3
位操作`&` `|` `~` `^` `<<` `>>`6
賦值`=` `+=` `-=` `*=` `/=` `%=` `&=` `|=` `^=` `<<=` `>>=`11
條件`?:`1 (三目)
逗號`,`1
指針`*` (間接) `&` (取址)2
求字節數`sizeof`1
特殊`()` `[]` `->` `.`4

優先級與結合性 (高→低)

共 15 級,關鍵節點:

  1. `()` `[]` `->` `.` — 左結合
  2. `++` `--` `!` `~` `+` `-` `*` `&` `sizeof` `(類型)` — 右結合
  3. `*` `/` `%` — 左
  4. `+` `-` — 左
  5. `<<` `>>` — 左
  6. `<` `<=` `>` `>=` — 左
  7. `==` `!=` — 左
  8. `&` — 左
  9. `^` — 左
  10. `|` — 左
  11. `&&` — 左
  12. `||` — 左
  13. `?:` — **右結合**
  14. `=` `+=` … — **右結合**
  15. `,` — 左結合 (最低)

口訣:**單目、乘除、加減、移位、關係、邏輯、條件、賦值、逗號**;單目/條件/賦值右結合,其餘左結合。

強制類型轉換

(類型說明符) (表達式)
// 例:(float)int_var  → 提升精度避免整除截斷

自增自減細節

形式操作順序表達式值
++i / --i先增/減,再參與運算新值
i++ / i--先參與運算,再增/減舊值

⚠️ 同一表達式多次修改同一變量 → UB (見《序列點》文章)。

基本類型範圍速查 (32 位典型)

類型位元組範圍 / 精度
char1-128~127 / 0~255
short2-32,768~32,767
int4-2,147,483,648~2,147,483,647
long4/8平台相關
float4~7 位有效數字,範圍 3.4E±38
double8~15 位有效數字,範圍 1.7E±308

常量後綴

  • `L`/`l` → `long` (整數) / `long double` (浮點)
  • `U`/`u` → `unsigned`
  • `F`/`f` → `float` (默認 `double`)

例:`123L`、`0xFFUL`、`3.14f`。

常量分類

整數、長整數、無符號數、浮點數、字符 (`'a'`)、字符串 (`"abc"`)、符號常量 (`#define`)、轉義字符 (`\n`、`\x1F`)。

收藏本手冊,寫表達式不再查手冊,優先級錯誤零發生!

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved