相邻字符和字符串文字标记

时间:2015-06-05 10:48:53

标签: c string char language-lawyer c11

这是一个熟悉的事实,在C中你可以写"a" "b"并获得"ab"。这在C11标准中讨论:

  

在转换阶段6中,由任何相邻字符序列和相同前缀字符串文字标记指定的多字节字符序列被连接成单个多字节字符序列。

短语"字符和..."似乎建议您可以通过编写'a' "b"来获得相同的结果,但我从来没有遇到过这种用法,而GCC和Microsoft编译器都拒绝它。我错过了什么吗?

1 个答案:

答案 0 :(得分:3)

不,也许我们在那里所作的陈述中得到了错误的含义。

让我引用C11,章节§5.1.1.2,翻译阶段,第6段,

  
      
  1. 连接相邻的字符串文字标记。
  2.   

在这里,我们在char字符串文字之间没有任何混淆,只是明确提到了 string 文字。