table.h
来自「第一次写的」· C头文件 代码 · 共 45 行
H
45 行
#ifndef __TABLE_H
#define __TABLE_H
//#include "Simpsc.h"
#include "Grammar.h"
#define TABLE_MAX 100
enum obj{constant,variable,procedure};
typedef struct table_type
{
char name[30]; //名字
obj kind; //种类
union
{
int val; //值(constant)
struct
{
int level; //层次
int adr; //相对偏移量
int size; //占用空间(variable)
};
};
}TableType;
class Table
{
friend class Grammar;
private:
int tx[MAX_LEV+1]; //table表的下标指针,是以值参数形式使用的
int lev;
Simpsc *pl;
public:
TableType table[TABLE_MAX];
public:
Table(Simpsc *p);
void Enter(obj k,Word *Token);
void GetVal(int num);
int Position(char *id);
int ReturnIndex();
};
#endif //table.h
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?