字元文字
字元文字是一種特殊型別的整數文字,用於表示一個字元。它們用單引號括起來,例如'a'
,型別為 int
。根據機器的字符集,文字的值是一個整數值。他們不允許字尾。
字元文字前面的 L
字首使其成為 wchar_t
型別的寬字元。同樣,因為 C11 u
和 U
字首分別使其成為 char16_t
和 char32_t
型別的寬字元。
當打算表示某些特殊字元(例如非列印字元)時,使用轉義序列。轉義序列使用轉換為另一個字元的字元序列。所有轉義序列都包含兩個或多個字元,第一個字元是反斜槓\
。緊跟在反斜槓後面的字元確定序列被解釋為的字元文字。
轉義序列 | 代表字元 |
---|---|
\b |
退格 |
\f |
表格饋送 |
\n |
換行(新行) |
\r |
回程 |
\t |
水平標籤 |
\v |
垂直標籤 |
\\ |
反斜槓 |
\' |
單引號 |
\" |
雙引號 |
\? |
問號 |
\nnn |
八進位制值 |
\xnn … |
十六進位制值 |
Version >= C89
轉義序列 | 代表人物 |
---|---|
\a |
警報(嘟嘟聲,鈴聲) |
Version >= C99
轉義序列 | 代表人物 |
---|---|
\unnnn |
通用角色名稱 |
\Unnnnnnnn |
通用角色名稱 |
通用字元名稱是 Unicode 程式碼點。通用字元名稱可以對映到多個字元。數字 n
被解釋為十六進位制數字。根據所使用的 UTF 編碼,通用字元名稱序列可能會導致程式碼點由多個字元組成,而不是單個普通的 char
字元。
在文字模式 I / O 中使用換行轉義序列時,它將轉換為特定於 OS 的換行位元組或位元組序列。
問號轉義序列用於避免三字元 。例如,??/
被編譯為表示反斜槓字元'\'
的三字元,但是使用 ?\?/
會產生 字串 ??/
。
八進位制值轉義序列中可能有一個,兩個或三個八進位制數字。