bison

    0热度

    1回答

    我目前正在实施Decaf(编程语言)语法的一部分。这里是野牛代码中的相关片段: type: INT | ID | type LS RS ; local_var_decl: type ID SEMICOLON ; name: THIS | ID | name DOT ID | name LS

    0热度

    1回答

    "lexicale.l", line 13: unrecognized rule "lexicale.l", line 13: unrecognized rule 的线13 {idf} {printf("indetificateur\n");} 的代码是: %{ #include "stdio.h" #include "stdlib.h" %} int [0-9]

    0热度

    1回答

    下面的语法匹配一个结构和野牛中的字段声明。有人能指出减少冲突的地方在哪里? 结构例: 结构MYSTRUCT {VAR INT;} %start start %% start : program { $$ = parser::root->adopt($1); } ; program : program structdef { $$ = $1->

    -1热度

    1回答

    一个文本编辑器,我创建了目前只能在命令行界面运行的编程语言。我希望它能够在Eclipse IDE上运行。我做了一些研究,但无法真正找到准确的答案。 编程语言使用flex和野牛创建的,因此,用c创建。我没有为我的编程语言创建GUI,而是决定使用Eclipse IDE。 后如何教Eclipse能够识别我的编程语言的一些广泛的研究,我发现了一些结果这表明,我可以使用CDT在Eclipse来解决这个问题。

    0热度

    1回答

    我使用flex和bison为虚构的编程语言创建解析器。将会有有效和无效的变量名称。 XXXX XY-1 // valid XXXXX Z // valid XXX Y // valid XXX 5Aet // invalid XXXX XXAB-Y // invalid x的开头只是指定变量的大小。变量5Aet是无效,因为它以数字开头。我已成功地匹配这个 [\_\-0-9][a-zA-

    -1热度

    1回答

    我在flex和野牛 计算器一个问题,这个代码 0[xX][0-9a-fA-F]+ {yylval=strtol(yytext,0 ,16);return HEX;} 它实际上承认十六进制值,并做数学运算,但当我想打印结果时,以十进制打印。 ,所以我认为它是一个室内用的问题这一部分: /*main(int argc, char **argv) { int tok; while(tok =

    1热度

    1回答

    我正在学习Flex/Bison现在,我想我可以做一个编译器,但是我查询得越多,我就越觉得它们只是Syntactic Analyzers,并且不允许生成可执行文件的新文件。来自我们的编程语言。我解释,当执行Bison生成的文件时,它只能解释我们在C语言中的代码语言。 是否可以创建一个编译器,用于从任何没有编译器的窗口生成可执行文件?

    2热度

    1回答

    随着macOS从10.12更新到10.13,/ usr/local/bin/bison停止工作。 问题: $ /usr/local/bin/bison --version Illegal instruction: 4 重建野牛的尝试也失败并LLDB报告EXC_BAD_INSTRUCTION。 $ lldb src/bison (lldb) target create "src/bison"

    0热度

    1回答

    我想使用flex和yacc来识别整数令牌。这是我用于整数的flex文件语法。 %{ #include "main.h" #include "y.tab.h" #include <stdlib.h> #include <string.h> #define YYSTYPE char * void yyerror(char *); %} code "code" special

    0热度

    1回答

    您好我是野牛和flex的新手,我试图创建一个简单的计算器,但我似乎在编译时出现错误。 以下是我的Flex .L文件(名为人): %{ #include "a.tab.h" %} number [0-9]+ %% "+" {return ADD;} "-" {return SUB;} "*" {return MUL;} "/" {return DIV;} "|" {r