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

C語言關鍵字完整清單與分類解析:C99/C11 新增關鍵字對照

     編輯:C 語言問答

C17 (ISO/IEC 9899:2018) 共 44 個關鍵字

分類關鍵字說明
資料型別void空型別、泛型指標 void*
char字元/位元組
short, int, long整數型別
float, double浮點型別
signed, unsigned符號修飾
_BoolC99 布林型別 (配合 <stdbool.h> 用 bool)
_Complex, _ImaginaryC99 複數型別
型別修飾const唯讀
volatile防止優化、硬體暖存器
restrictC99 指標不別名優化提示
_AtomicC11 原子操作型別
static靜態儲存期/內部連結
extern外部連結
register建議暫存器 (現代編譯器忽略)
typedef型別別名
流程控制if, else選擇
switch, case, default多路選擇
for, while, do迴圈
break, continue跳出/繼續
goto無條件跳轉
return函式返回
結構化struct, union, enum自訂型別
sizeof型別/運算元大小 (編譯期常數)
_Alignas, _AlignofC11 對齊控制/查詢
_GenericC11 泛型選擇 (類模板雛形)
_Static_assertC11 編譯期斷言
其他autoC11 推斷型別 (C23 擴展)
inlineC99 內聯函式建議

常見誤區

  • main、printf、malloc **不是關鍵字**,是函式名/標識符。
  • class, try, catch, template 是 C++ 關鍵字,C 沒有。
  • C99 新增:_Bool, _Complex, _Imaginary, inline, restrict。
  • C11 新增:_Alignas, _Alignof, _Atomic, _Generic, _Noreturn, _Static_assert, _Thread_local。

實用技巧

  • 讓編輯器/IDE 高亮顯示關鍵字,寫碼時直觀辨識。
  • 命名變數**避開關鍵字**,雖然 int class = 1; 在 C 合法 (非關鍵字),但極易混淆。
  • 背誦順序:**型別 → 修飾 → 流程 → 結構 → 特殊**,分類記憶比死背清單牢固。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved