📄 compiler.h
字号:
/************************************************************************
* 文件名: DrawFrame.h
* 文件描述: 给指定的窗口画边框
* 创建人: 程红秀, 2005年01月03日
* 版本号: 1.0
************************************************************************/
#if !defined _COMPILER_H
#define _COMPILER_H
struct CIFA //词法分析结果
{
int nType; //0:error, 1:id, 2:num, 3-:keyword and operator, -1:end note
int nValue; //二元式中nValue值
char szText[20]; //单词
int nAddr; //源文件缓冲区中地址
};
typedef char (* ddd)[100];
class CFenXi
{
public:
void YuFaFenXi(); //语法分析
void CiFaFenXi(); //词法分析
int m_nErrAddr; //语法错误对应单词的地址
int m_nErrNo; //语法错误代码
char m_str[20000]; //源程序缓冲区
char m_szErrMsg[100][100]; //错误信息表
CIFA * m_cifa[10000]; //词法分析结果
protected:
void init();
int m_nCur; //用于语法分析中,指示词法分析结果表中当前的位置
int m_n; //用于词法分析中,用于指示词法分析结果的个数
char m_szKW[50][20]; //关键词表
int FindInKeyWordTab(char *);
int y_GuanXi(); //关系
int y_GuanXiBiaoDaShi(); //关系表达式
int y_BuErBiaoDaShi(); //布尔表达式
int y_YingZhi(); //因子
int y_Xiang(); //项
int y_BiaoDaShi(); //表达式
int y_ShiChanBiao(); //实参表
int y_GuoChengYuJu(); //过程语句
int y_XunHuanYuJu(); //循环语句
int y_TiaoJianYuJu(); //条件语句
int y_FuZhiYuJu(); //赋值语句
int y_FuHeYuJu(); //复合语句
int y_YuJu(); //语句
int y_YuJuChuan(); //语句串
int y_XingChan(); //形参
int y_XingChanBuFeng(); //形参部分
int y_GuoChengShuoMing(); //过程说明
int y_JianBianShuoMing(); //简便说明
int y_ShuoMing(); //说明
int y_ShuoMingChuan(); //说明串
int y_ChengXuTi(); //程序体
int y_ChengXu(); //程序
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -