本文来简单地谈谈 C++ 的转义序列,有两类字符程序员不能直接使用,第一类是不可打印的字符,如换行符,响铃符,制表符等等,这些字符没有办法通过直接输入得到直接的输出,第二类是在 C++ 中有特殊含义的字符,这类字符同样没有办法通过直接输入得到直接的输出,这两类字符都只能通过转义序列进行实现,C++ 语言规定的转义序列包括:

在程序中,以上转义序列被当作一个字符使用

我们也可以使用泛化的转义序列,其形式是 x 后跟一个或者多个十六进制数,或者 后面跟 1 个,2 个或者 3 个八进制字符,注意,如果反斜线 后面跟的八进制数字超过 3 个,只有前 3 个数字与 构成转义序列,相反,x 要用到后面跟着的所有数字,看以下程序的例子:

1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
int main()
{
// 表示两个字符(123 对应的字符和 4)
std::cout << "1234" << std:: endl;

/* 表示一个 16 位字符,超过 8 位的十六进制字符
* 与某个前缀作为开头的扩展字符集一起使用
*/
std::cout << u"x1234" << std::endl;
return 0;
}

程序运行结果如下:

字符和字符串字面值: