在C語言程序設計中,轉義字符是表示不可打印字符、特殊控制字符以及字符字面量的重要機制。本文系統整理了C語言所有標準轉義字符的含義、用法及ASCII碼對應關係,供開發者快速查閱。
轉義字符以反斜線 \ 開頭,後跟一個或多個字符,組成一個具有特殊含義的字符常量。其含義不同於字符原有的字面意義,因此稱為「轉義」字符。最常見的例子是 \n 表示換行,而非字面上的反斜線加字母n。
| 轉義字符 | 含義 | ASCII碼(十進制) |
|---|---|---|
\n | 換行/回車換行 | 10 (0x0A) |
\t | 水平製表符 | 9 (0x09) |
\v | 垂直製表符 | 11 (0x0B) |
\b | 退格 | 8 (0x08) |
\r | 回車 | 13 (0x0D) |
\f | 換頁/走紙 | 12 (0x0C) |
\\ | 反斜線符號 \ | 92 (0x5C) |
\' | 單引號 ' | 39 (0x27) |
\" | 雙引號 " | 34 (0x22) |
\a | 響鈴/蜂鳴 | 7 (0x07) |
\? | 問號(用於避免三字母組歧義) | 63 (0x3F) |
除了上述具名轉義字符,C語言還支持通過數值直接指定任意字符:
\ddd(1~3位八進制數),如 \101 = 'A' (65),\134 = \ (92)\xhh(1~2位十六進制數),如 \x41 = 'A',\x0A = 換行廣義上,字符集中的任何字符均可用 \ddd 或 \xhh 表示,這在處理非打印控制字符或特定編碼時非常有用。
printf("路徑: C:\\Program Files\\App\n"); // 輸出: 路徑: C:\Program Files\App
printf("他說: \"Hello\"\t然後離開\r\n"); // 包含雙引號、製表符、回車換行
char esc = '\x1B'; // ESC鍵 ASCII 27
char bell = '\007'; // 響鈴,八進制7
"\n" 長度為1,非2\999 實際為 \99 + '9',超過3位或遇到非八進制數字停止\x1234 會盡可能多讀取十六進制數字,建議配合字符串拼接使用:"\x1B" "34"\x 形式,現代編譯器均已支持熟練掌握轉義字符是C語言字符串處理、格式化輸出、文件操作及網絡協議解析的基礎。建議開發者收藏本對照表,遇到特殊字符處理時快速查閱。