这些代码可以使用lex编译器进行编译。这两个编译器有什么不同?
发布于 2015-02-08 00:43:09
lex文件是包含正则表达式和嵌入式C代码的文件。lex工具获取lex文件并将其转换为纯C文件,该文件只包含lex文件中的C代码以及从正则表达式生成的代码。
C编译器是一个获取C文件并将其转换为机器码的工具。
因此,如果您使用lex,您的工作流程是:编写lex文件,使用lex创建C文件,使用C编译器编译该C文件(以及项目中的其他C文件)。
如果你没有使用lex,工作流程是:写一个C文件,使用C编译器编译它。
使用lex的原因是,编写正则表达式来生成词法分析器通常比自己编写等效的C代码容易。
https://stackoverflow.com/questions/28384619
复制相似问题