📄 递归前.y.svn-base
字号:
{%
#include global.h
%}
%token BG FG CD HISTORY EXIT PARA SRC;
%%
command :CDcommand
|BGcommand
|FGcommand
|HISTORYcommand
|EXITcommand
;
CDcommand :CD
{
cStr.cmd="cd";
}
|CD SRCstring
{
cStr.cmd="cd";
cStr.src=$2;
}
;
BGcommand :BG
{
cStr.cmd="bg";
}
|BG SRCstring
{
cStr.cmd="bg";
cStr.src=$2;
}
;
FGcommand :FG
{
cStr.cmd="fg";
}
|FG SRCstring
{
cStr.cmd="fg";
cStr.src=$2;
}
;
HISTORYcommand :HISTORY
{
cStr.cmd="history";
}
|HISTORY PARAstring
{
cStr.cmd="history";
cStr.para=$2;
}
|HISTORY SRCstring
{
cStr.cmd="history";
cStr.src=$2;
}
|HISTORY PARAstring SRCstring
{
cStr.cmd="history";
cStr.para=$2;
cStr.src=$3;
}
;
PARAstring :PARA
{
$$=tokenstring;
}
;
SRCstring :SRC
{
$$=tokenstring;
}
;
%%
int yyerror()
{
printf("");//有错
return 0;
}
static int yylex(void){
return getToken();
}
void parse(void){
yyparse();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -