• 大小: 650KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-01-08
  • 语言: C/C++
  • 标签:

资源简介

使用lex和yacc 完成simpleC语言简单语句的分析 编译原理课程设计

资源截图

代码片段和文件信息


#include “predef.h“
#include “myparser.h“
#include “analyze.h“
#include 
//
static int location = 0;
static Symtab * pTable;
static FunEntry * pFun;

//traverse实现遍历语法树,由于遍历时在不同情况下的操作不同,这里使用了函数指针变量
//来实现在遍历的同时执行不同的操作。
static void traverse(TreeNode * t 
 void (* preProc) (TreeNode *)
 void (* postProc) (TreeNode *))

if (t != NULL)

int i;
preProc(t);
for (i=0; i < MAXCHILDREN; i++)
traverse(t->child[i] preProc postProc);
postProc(t);
traverse(t->sibling preProc postProc);
}
}
//定位到需要的变量表中
static void adjustVal(TreeNode * t)

if (t == NULL) return;
else if (t->nodekind == Dec) {
switch (t->kind.dec)
{
case FunDefK:
pFun = Lookup_Fun(t->attr.name);
break;
case CompK:
pTable = t->attr.table;

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      14549  2008-01-02 15:19  MyComplier\analyze.c

     文件        777  2007-12-27 13:20  MyComplier\analyze.h

     文件      26611  2008-01-02 15:19  MyComplier\Debug\analyze.obj

     文件          0  2008-01-02 15:19  MyComplier\Debug\analyze.sbr

     文件     181248  2008-01-05 13:29  MyComplier\Debug\MyComplier.bsc

     文件     248516  2008-01-02 15:21  MyComplier\Debug\MyComplier.pch

     文件      12506  2008-01-02 15:17  MyComplier\Debug\mylexer.obj

     文件          0  2008-01-02 15:17  MyComplier\Debug\mylexer.sbr

     文件      59652  2008-01-02 15:17  MyComplier\Debug\myparser.obj

     文件          0  2008-01-02 15:17  MyComplier\Debug\myparser.sbr

     文件     258114  2008-01-05 13:29  MyComplier\Debug\SimpleC.exe

     文件     278864  2008-01-05 13:29  MyComplier\Debug\SimpleC.ilk

     文件      30678  2008-01-05 13:29  MyComplier\Debug\SimpleC.obj

     文件     664576  2008-01-05 13:29  MyComplier\Debug\SimpleC.pdb

     文件          0  2008-01-05 13:29  MyComplier\Debug\SimpleC.sbr

     文件      41984  2008-01-05 13:29  MyComplier\Debug\vc60.idb

     文件      53248  2008-01-05 13:29  MyComplier\Debug\vc60.pdb

     文件       4834  2007-12-27 20:04  MyComplier\MyComplier.dsp

     文件        528  2007-12-24 09:37  MyComplier\MyComplier.dsw

     文件      66560  2008-01-05 13:32  MyComplier\MyComplier.ncb

     文件      57856  2008-01-05 13:32  MyComplier\MyComplier.opt

     文件       1593  2008-01-05 13:29  MyComplier\MyComplier.plg

     文件      13846  2008-01-02 15:17  MyComplier\mylexer.c

     文件       1286  2008-01-02 15:17  MyComplier\mylexer.h

     文件       2852  2007-12-28 11:06  MyComplier\mylexer.l

     文件      14524  2008-01-02 15:17  MyComplier\mylexer.v

     文件      42610  2008-01-02 15:17  MyComplier\myparser.c

     文件       1788  2008-01-02 15:17  MyComplier\myparser.h

     文件      32616  2008-01-02 15:17  MyComplier\myparser.v

     文件      11191  2008-01-02 15:17  MyComplier\myparser.y

............此处省略13个文件信息

评论

共有 条评论

相关资源