我真的不熟悉lex / flex。 我正在尝试调试一些传统的flex代码。 我希望看到与特定规则匹配的文本。
例如
[a-z]* {"some C code" "need to print the string that matched this rule"}
例如。
如果johndoe@xyz.com
是输入,我需要打印匹配的字符串,即johndoe
我尝试打印yytext
,但它只显示第一个字符。
答案 0 :(得分:3)
如果您正在尝试调试,并且您正在使用flex
,那么当您将flex输入转换为{{1}时,您可能希望使用-d
选项}。这将构建一个调试扫描程序,它将自动报告所有规则匹配(以及其他事件)。
有关详细信息,请参阅flex manual
如果你真的想插入C
语句,这应该可以正常工作:
printf