字符文字

字符文字是一种特殊类型的整数文字,用于表示一个字符。它们用单引号括起来,例如'a',类型为 int。根据机器的字符集,文字的值是一个整数值。他们不允许后缀。

字符文字前面的 L 前缀使其成为 wchar_t 类型的宽字符。同样,因为 C11 uU 前缀分别使其成为 char16_tchar32_t 类型的宽字符。

当打算表示某些特殊字符(例如非打印字符)时,使用转义序列。转义序列使用转换为另一个字符的字符序列。所有转义序列都包含两个或多个字符,第一个字符是反斜杠\。紧跟在反斜杠后面的字符确定序列被解释为的字符文字。

转义序列 代表字符
\b 退格
\f 表格馈送
\n 换行(新行)
\r 回程
\t 水平标签
\v 垂直标签
\\ 反斜杠
\' 单引号
\" 双引号
\? 问号
\nnn 八进制值
\xnn 十六进制值

Version >= C89

转义序列 代表人物
\a 警报(嘟嘟声,铃声)

Version >= C99

转义序列 代表人物
\unnnn 通用角色名称
\Unnnnnnnn 通用角色名称

通用字符名称是 Unicode 代码点。通用字符名称可以映射到多个字符。数字 n 被解释为十六进制数字。根据所使用的 UTF 编码,通用字符名称序列可能会导致代码点由多个字符组成,而不是单个普通的 char 字符。

在文本模式 I / O 中使用换行转义序列时,它将转换为特定于 OS 的换行字节或字节序列。

问号转义序列用于避免三字符 。例如,??/被编译为表示反斜杠字符'\'的三字符,但是使用 ?\?/会产生 字符串 ??/

八进制值转义序列中可能有一个,两个或三个八进制数字。