C++ 标记

对于编译器标识是 c++ 程序中最小的元素。 C++ 分析器识别这些标记:标识符、关键字、文本、运算符、标点和其他分隔符。 这些标记流构成一个翻译单元。

标记通常由“空格”分隔。空格可以是一个或多个指示:

  • :(空白)

  • 水平或垂直制表符

  • 新行

  • 换页

  • 注释

以下的被认为是标识:

keywordidentifierconstantoperatorpunctuator

下面是预处理标记:

header nameidentifierpp numbercharacter constantstring literaloperatorpunctuator 每个非空字符不能是上面的其中一个

该分析器输入流分隔标记通过创建最长标记可以使用输入字符在从左到右扫描。 考虑此代码片段:

a = i+++j;

编写代码的程序员可能已经预期这两个语句之一:

a = i + (++j)

a = (i++) + j

由于分析器创建尽可能长标记可能输入流,它选择第二个说明,进行标记 i++,+和 j。

请参见

参考

词法约定