1 / 12
文档名称:

TEST语言词法分析器.doc

格式:doc   大小:72KB   页数:12页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

TEST语言词法分析器.doc

上传人:平平 2021/6/12 文件大小:72 KB

下载得到文件列表

TEST语言词法分析器.doc

相关文档

文档介绍

文档介绍:TEST语言词法分析器
实验一 TEST语言词法分析器
实验目的
熟悉词法分析程序的设计方法。
实验内容
在windows的VC环境下,编写TEST语言的词法分析程序;
修改附录B的词法分析程序,添加保留字do、双分界符&&和||以及单分界符!的处理。
设计思想
算法的基本任务是从源程序中识别出具有独立意义的单词符号,其基本思想是根据扫描到单词符号的第一个字符的种类,分析与代码中相应的单词符号。
源程序
#include""
#include""
#include""
#define keyword 8
char *key[keyword]={"if","int","for","while","do","return","break","continue"};
#define yunsuan 9
char yun[yunsuan]="+-*/=><!";
#define fenge 8
char fen[fenge]=",.;{}()";
char ch;
int i,k;
char buff[20];
void output(int ,char*);
void scan(FILE *fp)
{ int j;
ch=fgetc(fp);
while(ch==' '||ch=='\n'||ch=='\t')
{ch=fgetc(fp);}
if(isalpha(ch)) /*输入的是字母,进行 标识符处理*/
{buff[0]=ch;
i=1;
ch=fgetc(fp);
while(isalnum(ch)) /*如果是字母数字则组合,否则结束*/
{ buff[i]=ch;
i++;
ch=fgetc(fp); }
buff[i]='\0'; /*查找保留字*/
fseek(fp,-1,1);
j=0;
while((j<keyword)&& strcmp(buff,key[j]))
j++;
if(j>=keyword)
{ output(2,buff); }
else
{ output(1,buff); }
}
else if(isdigit(ch))
{ buff[0]=ch;
ch=fgetc(fp);
i=1;
while(isdigit(ch)) /*如果是数字则整合数字*/
{buff[i]=ch;
i++;
ch=fgetc(fp);}
buff[i]='\0'; /*整数整合结束*/
fseek(fp,-1,1);
output(3,buff);
}
else if(strchr(fen,ch)>0) /*判断分隔符*/
{buff[0]=ch;
ch=fgetc(fp);
buff[1]='\0';
fseek(fp,-1,1);
output(5,buff);}
else if(strchr(yun,ch)>0) /*判断运算符*/
{buff[0]=ch;
if(ch=='=') /*双运算符*/
{ch=fgetc(fp);
if(ch=='=')
{output(4,"==");}
else
{fseek(fp,-1,1);
output(4,"=");}}
else if(ch=='>')
{ ch=fgetc(fp);
if(ch=='=')
{output(4,">=");}
else
{fseek(fp,-1,1);
output(4,">");}}
else if(ch=='<')

{ ch=fgetc(fp);
if(ch=='=')
{output(4,"<=");}
else
{fseek(fp,-1,1);
output(4,"<");}}
else if(ch=='!')
{ ch=fgetc(fp);
if(ch=='=')
{output(4,"!=");}
else
{fseek(fp,-1,1);
out

最近更新

我国民事执行异议之诉完善研究的开题报告 2页

我国工业企业环境技术创新的政策激励与效应的.. 2页

2024年幼师专业职业生涯规划书 59页

我国商业银行信贷业务主要法律问题研究的开题.. 2页

2024年幼儿教师个人研修总结(通用5篇) 12页

2024年幼儿德育工作计划范文7篇 20页

2024年幼儿小班周工作计划汇编四篇 14页

2024年幼儿大班班务工作计划15篇 73页

2024年幼儿园食品安全专题会议报告(通用5篇).. 12页

我国中小企业海外直接投资探析的开题报告 2页

2024年幼儿园贫困申请书(通用7篇) 8页

成都市中学小场地足球运动开展现状及发展对策.. 2页

2024年幼儿园离职申请书 18页

2024年幼儿园的实习生辞职信 17页

快捷酒店管理系统设计与实现中期报告 2页

2024年幼儿园新学期安全工作计划(通用15篇) 58页

工厂消防演练工作总结(30篇) 45页

微博对组织内领导力提升的影响研究的开题报告.. 2页

微创血管介入手术机器人的定位与导航的开题报.. 2页

2024年事业单位招聘考试天津市职业能力倾向测.. 22页

申请修建公共设施申请书 4页

2023年粮油保管员考试试题附带答案 14页

重庆市2024年中考物理二模试卷附答案 14页

娇媚的妈妈3篇 4页

数列基础练习题及答案 8页

粮油保管员初级理论知识试卷 9页

必修四 哲学思维导图 22页

《佛说善恶因果经》拼音(可打印成册)(精) 9页