11得票3回答
使用ANTLR相比于Flex/Bison有哪些缺点?

我在本科期间几年前曾经使用过Flex、Bison。但是现在我不太记得了。最近,我听说了ANTLR。 您建议我学习ANTLR还是复习一下Flex/Bison? ANTLR比Flex/Bison有更多/更少的功能吗?

7得票2回答
Bison/Flex声明混乱…我应该在哪里包含/声明什么?

我正在使用Bison和Flex创建一个可重入的扫描器/解析器对,但无法理解所有内容应该在哪里包含和声明。 首先,我正在使用可重入的Flex,因此需要首先通过声明“%parse-param {yyscan_t scanner}”将yyscan_t扫描仪类型传递给Bison,然后通过声明“%le...

14得票4回答
为什么在flex/bison中多行注释这么难懂?

我正在尝试在我的Flex (.l)文件中解析C风格的多行注释:%s ML_COMMENT %% ... <INITIAL>"/*" BEGIN(ML_COMMENT); <ML_COMMENT>"*/" ...

7得票2回答
Bison Java 示例

请问是否有关于在Java中使用GNU Bison的教程和/或示例可在网络上找到。我已经在网络上搜索过了,但是没有找到任何相关的内容。我尝试实现了一个示例,但是由于需要一个词法分析器,所以我无法编译它。以下是我的示例: %{ static void main(String[] args) ...

9得票2回答
在Lex和Yacc中创建注释

如何在Lex和Yacc中添加注释? 到目前为止,我还没有尝试过Yacc,但是在Lex中我已经尝试了/* 注释 */和// 注释,但是这两种都无法编译。我正在使用内置的Lex和Yacc编译器(或者可能是X-Code的),我的电脑是Mac系统。请问在Lex或Yacc中添加注释的正确语法是什么,最...

7得票5回答
如何修复由后增运算符引起的YACC移位/归约冲突?

我正在使用YACC(实际上是Bison)编写语法,但遇到了移位/归约问题。这是由于包含后缀递增和递减运算符引起的。以下是精简版本的语法: %token NUMBER ID INC DEC %left '+' '-' %left '*' '/' %right PR...

54得票2回答
如何解决Bison警告“...没有声明类型”的问题

在此文件上运行Bison:%{ #include <iostream> int yylex(); void yyerror(const char*); %} %union { char name[100]; int val;...

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

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

11得票2回答
GCC在bison生成的头文件中显示“数字常量之前的语法错误”

当我使用bison parser.y -d -t编译我的.y文件,并在我的flex文件中包含parser.tab.h文件时,gcc会报错“错误:数字常量之前的语法错误。”它引用了yytokentype枚举中的第32行,这是该枚举中的第一行。 enum yytokentype { BRE...

36得票3回答
编译gcc 4.6时出现问题:undefined reference to `yylex'。

我正在尝试构建gcc 4.6,但是我遇到了一些链接器错误,看起来好像是bison或flex没有被链接。当makefile发出这个命令时:gcc -g -fkeep-inline-functions -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qua...