一个简单的C语言编译器(18) case 22://OK //F->(E) log<<"语法分析:F->(E)"<<endl; ss.pop(); ss.pop(); ss.pop(); s3=sos.top(); sos.pop(); s2=sos.top(); sos.pop(); s1=sos.top(); sos.pop(); m=new Symbol; m->group='F'; m->line=s1->line; sos.push(m); //动作 m->code=s2->code; delete s1; delete s2; delete s3; break; case 23://OK //F->@ log<<"语法分析:F->@"<<endl; ss.pop(); s1=sos.top(); sos.pop(); m=new Symbol; m->group='F'; m->line=s1->line; sos.push(m); //动作 if(lookup(s1->word)) m->code="\tmov ax,"+s1->word+"\n\tpush ax\n"; else err(10,s1->line); delete s1; break; case 24://OK //F->n log<<"语法分析:F->n"<<endl; ss.pop(); s1=sos.top(); sos.pop(); m=new Symbol; m->group='F'; m->line=s1->line;