【问题标题】:lex file not compiling due to simple errorlex 文件由于简单错误而无法编译
【发布时间】:2013-12-09 15:24:45
【问题描述】:

所以我正在尝试使用 lex 实用程序编译这个 .l 文件,但它一直给我错误消息:

lex new_grammar.l “new_grammar.l”:第 15 行:错误:%} 之前的 EOF

我真的不明白我做错了什么,也许另一双眼睛会看到我犯了什么错误。任何帮助将不胜感激,谢谢。

%{
#include "y.tab.h"
%}

%%

"print"         {return print;}
"exit"          {return exit_command;}
[a-zA-Z]        {yylval.id = yytext[0]; return identifier;}
[0-9]+          {yylval.num = atoi(yytext); return number;}
[ \t\n]         ;
[-+=;]          {return yytext[0];}
.               {ECHO; yyerror("unexpected character");}

%%
int yywrap (void) {return 1;}

【问题讨论】:

  • 我在你粘贴的内容上运行了 lex,它没有抱怨。
  • 您是否包含任何选项?比如 -d 或 -l
  • 不。只需 lex file.l 版本:flex 2.5.35 Apple(flex-31)
  • 啊,尤里卡!我需要以 flex new_grammar.l 运行它

标签: c unix gcc yacc lex


【解决方案1】:

啊,尤里卡!我需要以flex new_grammar.l 的身份运行它 – mosawi

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-05
    • 2020-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多