开源编译器学习笔记05(VC6 语法分析器——见面语法树状态机)——2014_2_1

来源:互联网 发布:淘宝手机端购买流量 编辑:程序博客网 时间:2024/06/08 19:11

http://www.zengl.com/html/genlanmu/zenglbianchengyuyan/article-4.html


文章越来越不通俗,

需要花精力理解

int express(){Node_Type *nodes = AST_nodes.nodes;int state = START;int p=-1;bool IsMidTim_Div = FALSE;int tmpnode = -1;while(state!=DOWN){curnode++;switch(state){case START:状态机1();break;case INID:状态机2();break;case INASSIGN:状态机3();break;case INPLUS_MINIS:状态机4();break;case INTIME_DIVIDE:状态机5();break;default:myexit("syntax error");break;}//switch}//whilereturn p;}

按照原话,这个express函数可以说是整个zengl编程语言核心部分最复杂,最难理解的 部分。


下一步,一个一个状态机分析。


0 0