Ste*_*rus 8 yacc lex bison flex-lexer
如何在 Lex 和 Yacc 中发表评论?
到目前为止,我还没有尝试过 Yacc,但在 Lex 中我已经尝试过/* comment */and // comment,但这些都无法编译。我在 Mac 上,使用内置的 Lex 和 Yacc 编译器(或者可能是 X-Code 编译器,我不知道)。Lex 或 Yacc 或最好两者中注释的正确语法是什么?
来自信息柔性:
在定义和规则部分中,任何缩进文本或 %{ 和 %} 中包含的文本都会逐字复制到输出(删除 %{})。%{} 本身必须在行中不缩进。
在这种情况下,相关文本可以是目标语言的注释。
在定义部分(但不在规则部分)中,未缩进的注释(即以 开头的行
/*)也被逐字复制到输出中,直到下一个*/。
任何有效的 C 注释都是代码块中的注释。
yacc中的注释是/* ... */.
任何C注释都可以作为 Yacc 和 Lex 程序中任何地方的注释,但是:
/* comment */写入您的程序时,触摸文本的 LHS 将不起作用!
// comment评论,Lex 和 Yacc 都不好。这些注释虽然可以在 C 程序中工作,但不会工作!