串联常量数组是否与实现无关?

时间:2019-06-16 17:45:29

标签: c

我想知道在ISO规范中常量数组的串联是否依赖于实现?如果这取决于实现,您能告诉我哪个编译器没有连接吗?

#include <stdio.h>

int main(void) {

    char *a = "concatenate"
              "this array";
    puts(a);
    return 0;
}

1 个答案:

答案 0 :(得分:4)

这是一个标准功能,但与常量数组无关。它仅适用于字符串文字。

C标准定义了许多“翻译阶段”。阶段6是:

  
      
  1. 相邻字符串文字标记被串联。
  2.   

例如参见Web Workers中的 5.1.1.2翻译阶段