使用ubuntu在lex(flex)中匹配注释

使用ubuntu在lex(flex)中匹配注释,ubuntu,compiler-construction,lex,Ubuntu,Compiler Construction,Lex,我有一个关于匹配注释和正则表达式的问题 我使用了“/”*$(“”因为语法错误而使用) 而操作只是打印yytext-printf(%s是注释),yytext) 但是 输出非常奇怪,我猜不出问题所在 输入文件是 产量是 比如说 //显示“你好,世界!“绳子 只是“你好,世界!“绳子 哪里去了//显示 有什么问题吗?你在打印的内容中包含了换行符。根据你在上面打印的内容,可能会有奇怪的事情发生。请尝试printf(“%s\n”,yyleng-1,yytext);哇!!谢谢!它按照我的想法工作!为什么

我有一个关于匹配注释和正则表达式的问题

我使用了“/”*$(“”因为语法错误而使用)

而操作只是打印yytext-printf(%s是注释),yytext)

但是

输出非常奇怪,我猜不出问题所在

输入文件是

产量是

比如说

//显示“你好,世界!“绳子

只是“你好,世界!“绳子

哪里去了//显示


有什么问题吗?

你在打印的内容中包含了换行符。根据你在上面打印的内容,可能会有奇怪的事情发生。请尝试
printf(“%s\n”,yyleng-1,yytext);

哇!!谢谢!它按照我的想法工作!为什么要顺便使用yyleng?