[英]c++ string literal concatenation by juxtaposition
编码
std::string str = "Hello " "world";
std::cout << str << std::endl;
编译并打印Hello world
。 同样,
char chr[] = "abc" "def" "ghi";
std::cout << chr << std::endl;
打印abcdefghi
。 这如何以及为什么起作用?
这是[lex.phases] / 6涵盖的行为
相邻的字符串文字标记是串联在一起的。
因此,在编译器实际开始编译代码之前,仅将所有字符串文字分隔开,为什么将空格连接在一起。
"hello " "world";
"hello " "world";
"hello "
"world";
全部产生"hello world";
仅由空格分隔的字符串文字会自动连接起来, 请参阅cppreference
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.