资源简介
IF-ELSE条件语句的翻译程序设计(递归下降法、输出四元式)
代码片段和文件信息
//有效字符串: IFELSETHEN abx>=
/*
文法:
S->id=id | if E then S else S
E->id < id
E->id > id
*/
#include
#include
#include
#define $ASSIGN 249
#define $IF 250
#define $THEN 251
#define $ELSE 252
#define $GREAT 253
#define $LESS 248
#define $ID 254
typedef struct Wtoken
{
int type;
char ch;
}Wtoken;
typedef enum{JUMPJGJLASSIGNEND}OpKind;
typedef struct
{
int label;//标号
OpKind op;
char par1par2;
union{
char result;
int address;
};
}Fourtable;//四元式
#define MAX_TOKEN 256 //Wtoken表大小
#define MAX_QUAD 256 //四元式数组大小
Wtoken tokentable[MAX_TOKEN];
Fourtable quad[MAX_QUAD];
int token_index;//token表索引
int total_len;//token表有效长度
int quad_len;//四元式表有效长度
int quad_index;//四元式索引
in
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6223 2010-01-10 21:28 0120701340801 贺海亚\IF-ELSE.cpp
文件 96 2010-01-07 22:32 0120701340801 贺海亚\1.txt
目录 0 2010-01-08 17:47 0120701340801 贺海亚
----------- --------- ---------- ----- ----
6319 3
评论
共有 条评论