编译技术作者陈文宇02课件.pptVIP

  • 10
  • 0
  • 约8.57千字
  • 约 57页
  • 2016-12-25 发布于广东
  • 举报
抽象语法树 是源代码的抽象语法结构的树状表现 不保留仅语法用的符号 与具体语法树相对应 包括语法规则中的各种符号 建立抽象语法树 * while 顺序 y z = x + a b 抽象语法树 结点类型 设计 建立抽象语法树 * typedef struct _ast ast; typedef struct _ast *past; struct _ast{ int ivalue; char* svalue; char* nodeType; past left; past right; }; 结点类型 结点指针类型 保存整数信息 保存字符串信息 结点类型 指向左子树 指向右子树 与 结点 相关函数设计 past newAstNode() 创建抽象语法树结点 past newNum(int value) 创建数值结点 结点中的ivalue被设置为value past newVarRef(char* name) 创建标识符结点 结点中的svalue被设置为name past newExpr(int oper, past left, past right) 创建一个表达式结点:ivalue表示运算符 left、right分别指向表达式的两个操作数

文档评论(0)

1亿VIP精品文档

相关文档