我们编译原理有一个对pl/0编译器改造的三级项目,在网上我找到一篇帖子,里面有一段这个函数

北陌流歌 2020-10-17 11:58:00
int expression(bool* fsys, int* ptx, int lev,int index) { enum symbol addop; /* 用于保存正负号 */ bool nxtlev[symnum]; if(sym==plus || sym==minus) /* 开头的正负号,此时当前表达式被看作一个正的或负的项 */ { addop = sym; /* 保存开头的正负号 */ getsymdo; memcpy(nxtlev, fsys, sizeof(bool)*symnum); nxtlev[plus] = true; nxtlev[minus] = true; termdo(nxtlev, ptx, lev); /* 处理项 */ if (addop == minus) { gendo(opr,0,1); /* 如果开头为负号生成取负指令 */ } } else /* 此时表达式被看作项的加减 */ { memcpy(nxtlev, fsys, sizeof(bool)*symnum); nxtlev[plus] = true; nxtlev[minus] = true; termdo(nxtlev, ptx, lev); /* 处理项 */ } while (sym==plus || sym==minus) { addop = sym; getsymdo; memcpy(nxtlev, fsys, sizeof(bool)*symnum); nxtlev[plus] = true; nxtlev[minus] = true; termdo(nxtlev, ptx, lev); /* 处理项 */ if (addop == plus) { gendo(opr, 0, 2); /* 生成加法指令 */ } else { gendo(opr, 0, 3); /* 生成减法指令 */ } } return 0; }我想问问这个index参数有啥用啊
...全文
67 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

3,882

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧