C包括路径:安全使用连字符和&强调?

时间:2015-02-13 10:48:47

标签: c gcc include include-path

我意识到这可能是特定于操作系统的,但我正在尝试编写跨平台的GCC代码。所以想知道是否最好避免这些,或者如果我被迫选择,这将是更安全的赌注。

1 个答案:

答案 0 :(得分:2)

标题名称的语法是(C11,6.4.7 par.1):

header-name:
       < h-char-sequence >
       " q-char-sequence "
h-char-sequence:
       h-char
       h-char-sequence h-char
h-char:
          any member of the source character set except
                       the new-line character and >
q-char-sequence:
       q-char
       q-char-sequence q-char
q-char:
          any member of the source character set except
                       the new-line character and "

-_都是基本源字符集的一部分(5.2.1参数3)。但是标准留下了很多与#include实现定义相关的东西。

在实践中,我没有发现使用它们的任何问题。我不知道文件系统不允许或赋予它们特殊含义。 This Wikipedia article也没有列出一个。