在线文档教程
C++
语言 | Language

Escape sequences

逸出序列

转义序列用于表示字符串文字和字符文字...

下列转义序列可用%28额外转义序列可提供实现定义的语义%29:

Escape sequenceDescriptionRepresentation
\'single quotebyte 0x27 in ASCII encoding
\"double quotebyte 0x22 in ASCII encoding
\?question markbyte 0x3f in ASCII encoding
\backslashbyte 0x5c in ASCII encoding
\aaudible bellbyte 0x07 in ASCII encoding
\bbackspacebyte 0x08 in ASCII encoding
\fform feed - new pagebyte 0x0c in ASCII encoding
\nline feed - new linebyte 0x0a in ASCII encoding
\rcarriage returnbyte 0x0d in ASCII encoding
\thorizontal tabbyte 0x09 in ASCII encoding
\vvertical tabbyte 0x0b in ASCII encoding
\nnnarbitrary octal valuebyte nnn
\xnnarbitrary hexadecimal valuebyte nn
\unnnnuniversal character name(arbitrary Unicode valuemay result in several characterscode point U+nnnn
\Unnnnnnnnuniversal character name(arbitrary Unicode valuemay result in several characterscode point U+nnnnnnnn

注记

八进制逃逸序列,\0是最有用的,因为它表示空终止字符串...

新行字符\n中使用时具有特殊意义。文本模式I/O:它被转换为操作系统特定的换行符字节或字节序列。

八进制转义序列有三个八进制数字的限制,但终止在第一个字符,如果遇到一个有效的八进制数字更早。

十六进制转义序列没有长度限制,并且终止于第一个字符,该字符不是有效的十六进制数字。如果由单个十六进制转义序列表示的值不符合此字符串文字%28中使用的字符类型所表示的值范围char,,,char16_t,,,char32_t,或wchar_t%29,结果未指定。

窄字符串文字或16位字符串文字中的通用字符名可以映射到多个字符。\U0001f34c是4charUTF-8%28\xF0\x9F\x8D\x8C%29和2char16_tUTF-16%28\uD83C\uDF4C%29%29

问号转义序列\?是用来防止三角图在字符串文本中被解释:字符串,如"??/"编译为"\",但是如果第二个问号被转义,如"?\?/",它变成"??/"

二次

#include <cstdio> int main() { std::printf("This\nis\na\ntest\n\nShe said, \"How are you?\"\n" }

二次

产出:

二次

This is a test She said, "How are you?"

二次

另见

  • ASCII图

逃逸序列的C文档

*。

© cppreference.com

在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。

http://en.cppreference.com/w/cpp/language/EXECH