原文链接:http://xiezs.uicp.top/archives/2020032001
在编译原理课程中涉及到一个词法分析器生成软件flex,折腾一番过后来分享一下使用方法。
windows下安装flex
下载地址:http://gnuwin32.sourceforge.net/packages/flex.htm
点击Complete package, except sources右边的setup,下载好后运行安装程序安装flex
配置环境变量
添加flex安装目录下bin文件夹的地址到环境变量中
使用方法
新建测试文件 f.l
%%
[+-]?[0-9]+ { printf("%s\n", yytext); } /* Print integers */
\n {} /* newline */
. {} /* For others, do nothing */
%%
void main(){
yylex();
}
int yywrap(){
return 1;
}
打开命令行(cmd或powershell都行)并切换到代码所在目录,运行如下命令
flex f.l
该命令运行完成后将生成C语言代码lex.yy.c文件,接下来编译运行这个文件即可,可以使用gcc编译器(不会配置gcc的朋友可以去看我的另一篇博客:mingw64的安装和环境变量配置)
gcc lex.yy.c
运行完之后将生成一个a.exe文件,运行即可(打不开可以尝试以管理员身份运行),这是一个数字提取的程序。
原文链接:http://xiezs.uicp.top/archives/2020032001