为什么ubuntu在运行lex程序时显示错误

时间:2019-04-25 08:22:57

标签: ubuntu flex-lexer yacc lex

我正在尝试使用扩展名.l在UBUNTU中运行一个词法程序,我已经安装了flex和bison,并且能够获得lex.yy.c文件,但是当我给出命令{{1 }}或cc lex.yy.c -lfd终端显示错误:

cc lex.yy.c

我的代码是:

first.l:2:10: fatal error: iostream: No such file or directory
 #include <iostream>
          ^~~~~~~~~~

我重新安装flex和bison ans,也卸载并安装gcc,但没有任何更改!任何帮助将不胜感激,

2 个答案:

答案 0 :(得分:1)

您正在尝试使用C编译器来编译C ++代码。请改用g++

答案 1 :(得分:-2)

这是运行它的正确代码:

%%
[0-9]+\.[0-9]*  { printf("Found a floating-point number:"); }
[0-9]*          { printf("Found an integer:"); }
[a-zA-Z0-9]*    { printf("Found a string: "); }
%%
main(int argc, char** argv) 
{
 yylex();
}