- 0
- 0
- 约8.39千字
- 约 7页
- 2017-03-10 发布于贵州
- 举报
编译原理 词法析器
《编译原理》
实验报告
班级: 软件1302 姓名: 周云翔 学号: 1座机电话号码 指导老师: 万燕 实验内容:
设计:词法分析器
目标:用flex编写词法分析器。
功能要求:从源程序文件中识别出一个个单词符号,构造标识符表,并按要求输出单词,符号的二元式,要求有出错报告。
参与人员:个人
实验平台:cmd,vc++
运行环境: vc++
操作系统:windows
程序构架:先定义 标识符,正整数,保留字,单运算符,双运算,符界符,注释 再利用二元式输出法将分析后的数据输出。
各类具体设计及遇到问题 Keyword与opreator用到了大量if循环用于输出二元式序号略显麻烦,代码有些多,用文本编辑flex文件时总会遇见编译错误会忘记输入空格和%,查找程序错误时代码冗长不好查找。
功能测试
程序存在不足: 程序代码过长
心得体会:
在学习flex 与yacc时遇到了很多困哪感觉各种代码十分复杂,各种符号的应用看起来很头疼
了解了单词分析后才慢慢有所理解,但现在学的还只是皮毛想要写出更好的程序还需要更加深入的学习。
源代码:
Flex:
else if strcmp yytext, 0
keywordNum 28;
printf %d,0 %s\n,keywordNum,yytext ; note border_operator if strcmp y
原创力文档

文档评论(0)