资源简介
C语言编写的一个词法分析器,功能不复杂,主要是状态图实现词法分析的思想。
代码片段和文件信息
#include
#include
#include
#include
#include
char ch=NULL; //存放最新读进源程序的字符
char strToken[120]; //存放构成单词符号的字符串
char *keyword[]={“dim““if““do““stop““end“};//关键字表
FILE * fp=NULL; //输入
FILE * fw=NULL; //输出
typedef struct
{
char *I[120]; //标识符数组
int lenth; //标识符数量
} identified;
typedef struct {
char *cont[120];//存放常数的数组
int lenth;//常数的数目
} constnum;
//读字符到ch中
void getChar(FILE *ifp)
{
if((ch=getc(ifp))==EOF)
exit(1);
}
//检查ch中的字符是否为空白,若是,则调用getChar()读取下一个字符,直到非空
void getBC(FILE *ifp)
{
while(ch==‘ ‘|| ch==‘\n‘)
{
getChar(ifp);
}
}
//连接strToken和ch
void conCat()
{
char * ct=&ch;
strcat(strTokenct); //strcat函数,包括在中
}
//判断是否为字母。
int isLetter()
{
return isalph
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 98816 2012-05-14 15:59 词法分析器\编译原理实验1.doc
文件 31232 2012-05-11 11:35 词法分析器\LEX.exe
文件 3685 2012-05-11 11:23 词法分析器\lex.c
目录 0 2012-05-11 11:36 词法分析器\
评论
共有 条评论