⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 data.h

📁 我的编译原理课程设计。类PASCAL的语法
💻 H
字号:
enum symbol{nul,ident,number,plus,minus,times,eql,neq,lss,leq,gtr,geq,lparen,rparen,
becomes,beginsym,endsym,ifsym,whilesym,callsym,constsym,varsym,procsym,readsym,
writesym,forsym,divsym,semicolon,comma,period,tosym};
//reserved symbol in my language
enum object{constant,variable,procedure};
enum code{c_times,c_minus,c_eql,cj,cj_lss,cj_leq};

#define norw 11 //no.of reserved words
#define nmax 10  //max.no.of digits in numbers
#define amax 32767 //maximum address
#define txmax 100 //lenth of identifier table
#define levmax 3  //maximum depth of block nesting
//const var procedure
const al=10;  //lenth of identifier
typedef struct wword
{
	char w[10];
}W_WORD;
typedef struct s_sym
{
	char ch;
	symbol ch_sym;
}SYM;
SYM ssym[9];
typedef struct ss_table
{
	char name[10];
	object kind;
	int val,level,adr;
}s_table;
char ch=' ';                   //last character read
symbol sym;                //last symbol read
char id[10];                //last identifier read
int num;               //last number read
int cc;                    //character count
int ll;                    //line length
int kk,err; 
int depth;                //record how many 'begin's  depth             
int cx=0;                     //code allocation index
char line[64];
char a[10];
int count_line=0;            //record how many lines of the original file for error procedure
FILE *fp;
int out_fp;               //code file
W_WORD word[12];

symbol wsym[norw];
s_table table[txmax];
typedef struct w_gcode{
	int flag;
	char c_code[10];//flag=1
	int  c_num;     //flag=2
	char chr;       //flag=3
    int T;
}W_GCODE;
int TT=0;
W_GCODE gcode[20];
W_GCODE s_1,blank;
int g=0;
int newline=0;
//FILE * result;
//FILE * f_error;
char chr1=(char)13,chr2=(char)10;
int f_eof=0;
int tx0=0;  //initial table index
void init()
{
	for(int i=0;i<txmax;i++)
	{
		memcpy(table[i].name," ",1);
		table[i].val=0;
		table[i].level=0;
		table[i].adr=0;
	}
	cx=0;
	tx0=0;
    count_line=0;
	newline=0;
	g=0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -