141得票5回答
Flex/Lex和Yacc/Bison有什么区别?

什么是Flex和Lex以及Yacc和Bison的区别?我搜索了互联网,但没有找到任何确定的答案。 我能在Ubuntu上安装纯Lex和Yacc吗,还是只能安装flex和bison?我很困惑。 - Lex或Yacc是否仍由某人维护? - 它们都是免费的吗? - 如果Lex不是免费的,为什么我在...

98得票5回答
未定义对yywrap的引用

我正在使用Flex(词法分析器)编写一个简单的“语言”,它长这样:/* Just like UNIX wc */ %{ int chars = 0; int words = 0; int lines = 0; %} %% [a-zA-Z]+ { words++; chars += strle...

90得票4回答
在8位嵌入式系统上编写像Flex/Bison一样可用的解析器

我正在使用avr-gcc工具链,用C语言在AVR微控制器上作为练习编写一个类似BASIC的小型解释器。如果我要在Linux上运行该程序,我可以使用flex/bison。既然我限定了自己使用8位平台,那我应该如何编写解析器呢?

70得票2回答
能否让GCC从管道中读取数据?

我正在寻找一个选项来让gcc从标准输入读取源文件,主要是为了可以像这样从类似flex这样的工具生成对象文件,该工具会生成C代码(flex的-t选项将生成的C代码写入标准输出): flex -t lexer.l | gcc -o lexer.o -magic-option-here 因为我...

66得票9回答
如何在Windows上编译LEX/YACC文件?

我正在使用Lex和YACC文件来解析我的文件(.l文件和.y文件)。 如何在Windows平台上编译这些文件,并生成相应的.c文件?

61得票8回答
将字符串输入转换为Flex词法分析器

我想使用flex/bison解析器创建一个read-eval-print循环。问题是,由flex生成的词法分析器需要FILE*类型的输入,而我想要传入char*类型的输入。有没有什么方法可以实现这一点? 有人建议创建一个管道,将字符串输入进去,然后打开文件描述符并发送给词法分析器。这个方法相...

60得票6回答
在flex/lex中用于字符串字面量的正则表达式

我正在进行flex学习实验,希望能够匹配字符串字面值。我的代码目前如下:"\""([^\n\"\\]*(\\[.\n])*)*"\"" {/*matches string-literal*/;} 我苦苦挣扎于变量已经有一个多小时了,但却无法让它按照应该的方式工作。我希望匹配一个字...

47得票7回答
使用正则表达式匹配UTF-8编码下的任何中文字符

例如,我想匹配一个由m到n个汉字组成的字符串,那么我可以使用以下代码:[single Chinese character regular expression]{m,n} 是否有一个单个中文字符的正则表达式,可以匹配任何存在的中文字符?

33得票1回答
Doxygen - 无法找到 FLEX(缺失:FLEX_EXECUTABLE)

我知道这里有非常相似措辞的问题,但我找不到我的问题的答案,所以让我们开始吧: 我想知道哪些C++方法是被其他方法调用的,所以在谷歌上找到了Doxygen。 在他们的页面上,安装过程似乎很简单: 如果您已经安装了必要的构建工具(即g++、python、cmake、flex、bison),...

31得票9回答
在Flex/Lex中难以使用C风格注释

我想在Flex中创建一个规则来匹配C风格的注释,例如 /* */。 我有以下代码:c_comment "/*"[\n.]*"*/" 但它从未被匹配。 任何想法为什么?如果需要更多我的代码,请告诉我,我会提交全部内容。感谢回复的任何人。