编译原理实验一手动创建词法分析器 全球新要闻

博客园   2023-06-17 22:19:29


(相关资料图)

这个是真的难,只是懂运行逻辑不知道怎么去搞到正确的代码,搞了我老半天

手动创建词法分析器,具体内容详见实验一说明直接上代码先

代码补充一

要求是在识别到是左括号的时候运行的逻辑

else if (c == "{"){state = INCOMMENT ;//代码一: 填充代码save = FALSE; }

代码补充二

要求比较多,后面梳理一下逻辑再讲

case INASSIGN:{if(c == "="){state == DONE;currentToken = ASSIGN;}else{currentToken = ASSIGN;state = DONE;}//代码二:补充此代码}

主要是还有坑

需要换上这个代码,上课听老师讲课的时候,低头自己打代码了,结果就没看到,自己搞了老半天

case INID:if (!(isalpha(c))&&!isdigit(c)&&c != "_"){ungetNextChar();save = FALSE;state = DONE;currentToken = ID;}break;