编译原理实验报告

编译原理实验报告

ID:11059052

大小:48.00 KB

页数:7页

时间:2018-07-09

编译原理实验报告_第1页
编译原理实验报告_第2页
编译原理实验报告_第3页
编译原理实验报告_第4页
编译原理实验报告_第5页
资源描述:

《编译原理实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一实验题目词法分析器的设计二实验目的通过编写并上机调试一个词法分析程序,掌握在对程序设计语言的源程序进行扫描的过程中,将其分解后各类单词的词法分析方法。二实验内容使用c++编写的词法分析器keylist.txt(用来存放关键字)automainstructbreakelseswitch caseregistertypedefexternreturnconstgotolableunsignedcontinueforprintfscanfsigneddefaultsizeof valatildoifsta

2、ticwhilekeytpye.txt(用来存放类型)charshortintlongdoubletempfloatboolenumvoidFILEmain.cppsetkeytype;//变量的类型列举了常用的一部分keytypeassign(keytype);//初始化变量的类型mapkeylist;//存放关键字(不包含类型)string是关键字long表示出现次数keylistassign(keylist);//初始化关键字multimap

3、g,string>varlist;//第一个string用来存放类型第二个string用来存放变量名multisetconstlist;//存放文中出现的数字型常量ifstreamfin("input.c",ios::in);//打开要读取的文件fun(fin,varlist,constlist,keytype,keylist);//执行fin.close();//关闭打开的文件print(varlist,constlist,keytype,keylist);//输出结果到output

4、.txt文件中main.hvoidkeytypeassign(set&keytype);//把类型写入keytype-set(类型)中去voidkeylistassign(map&keylist);//把关键字写入到keylist-map中去voidprint(multimap&varlist,multiset&constlist,set&keytype,map

5、g,long>&keylist);//输出信息内容voidfun(ifstream&fin,multimap&varlist,multiset&constlist,set&keytype,map&keylist);//执行-四实验结果input.txtintmain(intargc,char*argv[]){inti;int*a;intb[5];for(i=0;i<5;++i){b[i]=i;}for(i=0;i<

6、5;++i){printf("%d",b[i]);}}output.txt变量类型变量名称:char*argv[]intargcintiintb[]int*a出现的关键字次数:for2main1printf2程序中出现的常量:1:04:56:b2:05:53:56:b五实验中遇到的问题总结在对判断什么时候是一个词法结束的时候有的时候没有作出正确的判断;在程序设计之初,没有一个好的规划。写程序的时候,要适当的多加些注释,一方面方便了别人的阅读,另一方面,也可以理清自己的思路。六实验心得体会1.开始拿到设

7、计要求的时候,一定要搞搞清楚设计的要求是什么。2.设计程序的时候,要合理的列出程序的步骤。3.合理的使用条件。4.要充分的使用库文件(一定要做到对库文件有所了解)。代码:main.h#include#include#include#include#include#include usingnamespacestd;Voidkeytypeassign(set&keytype){//把类型写入key

8、type-set(类型)中去stringtemp="";char*p=newchar[20];ifstreamfinkeytype("keytype.txt",ios::in);while(!finkeytype.eof()){finkeytype.getline(p,19);temp.assign(p);keytype.insert(temp);}/*------endofwhile------*/finkeytype.close();delete[]

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。