expr.y
来自「这是一个软件水平资格考试中使用的CASL汇编语言的编译器,实现文件中包括一个编译」· Y 代码 · 共 32 行
Y
32 行
%{
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
%}
%token INTEGER
%left '+''-'
%left '*''/'
%%
program: program expr'\n' { printf("%d\n",$2); }
|
;
expr: INTEGER { $$=$1;}
| expr'+'expr {$$=$1+$3;}
| expr'-'expr {$$=$1-$3;}
| expr'*'expr {$$=$1*$3;}
| expr'/'expr {$$=$1/$3;}
;
%%
#include "lex.yy.c"
int yyerror(char *s)
{
fprintf(stderr,"%s\n",s); return;
}
int main()
{
yyparse();
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?