C语言词法分析器构造实验报告
02计算机(2) 2002374203 冯绍欣
一,题目要求:
完成一个C语言的词法分析器的构造.此词法分析器能识别附值语句,循环语句,条件语句,并能处理注释.
二,设计方案:
这个词法分析器分析的主要关键字有:main, int, float, char, if, else, for, while, do, switch, case, break; default.选择要分析的c文件,首先对其去掉注释和与空格处理,再根据字符的不同类型分析.
1,全局数据结构:
字符数组 set[ ]:存放从文件中读到的所有字符;
str[ ]:存放经过注释处理和预空格处理的字符;
strtoken[ ]:存放当前分析的字符;
结构体 KEYTABLE:存放关键字及其标号;
全局字符变量 ch:当前读入字符;
全局整型变量 sr, to:数组str, strtoken 的指针.
2,以层次图形式描述模块的组成及调用关系
3,主要函数的设计要求(功能,参数,返回值):
openfile:打开文件;
GetChar:将下一个输入字符读到ch中,搜索指示器前移一字符位置;
GetBC:检查ch中的字符是否为空白.若是,则调用GetChar直至ch中进入一个非空白字符;
Concat:将ch中的字符连接到strtoken之后;
IsLetter 和IsDigit:布尔函数过程,分别判断ch中的字符是否为字母和数字;
Reserve:整型函数过程,对strtoken中的字符串查找关键字表,若是关键字则返回编码,否则返回-1;
Retract:将搜索指示器回调一个字符位置,将ch置为空白字符;
reflesh:刷新,把strtoken数组置为空;
prearrange1:将注释部分置为空格;
prearrange2:预处理空格,去掉多余空格;
analysis:词法分析;
main:主函数.
4,状态转换图:
字母或数字
字母 非字母或数字
数字 数字
非数字
字符a
字符a
字符b
' = '
字符c
字符a包括:= , & , | , + , --
字符b包括:-- , , | , *
字符c包括:, , : , ( , ) , { , } , [ , ] , ! ,# , % , " , / , * , + , -- , > , <, .
三,源代码如下:
- c语言解析 > C语言词法分析器构造实验报告
-
C语言词法分析器构造实验报告
下载该文档 文档格式:DOC 更新时间:2004-12-03 下载次数:0 点击次数:1文档基本属性 文档语言: Simplified Chinese 文档格式: doc 文档作者: sophia 关键词: 主题: 备注: 点击这里显示更多文档属性 经理: 单位: 分类: 创建时间: 上次保存者: 修订次数: 编辑时间: 文档创建者: 修订: 加密标识: 幻灯片: 段落数: 字节数: 备注: 演示格式: 上次保存时间:
- 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
- DOC格式下载
- 您可能感兴趣的
- c语言实例解析精粹 c语言真题及答案解析 c语言习题与解析下载 c语言错题解析 计算机c语言真题解析 c语言高级实例解析 2010年c语言试题解析 c语言程序解析 c语言命令lsla解析
- 大家在找
-
- · 第8届奥运会会歌
- · 量子力学课后答案
- · 柔性制造系统技术课件
- · 天山网首页
- · 山东驾驶教练员考试题
- · pdf转换成excel破解版
- · 食管癌放疗后
- · 造价工程师环球下载
- · 血溅津门快播
- · c503手机游戏下载
- · 中国式次贷危机
- · 双螺杆塑料挤出机
- · 德国产加工蜗杆机床
- · cad电气符号大全
- · 好饿的小蛇ppt
- · 松下伺服a4
- · 汽车减震器生产厂家
- · 2012清明节征文
- · 玉泉方瓶代理商
- · 干式配电变压器
- · 波谱分析课后习题答案
- · 手抄报设计图
- · 采购与供应管理培训
- · 接触网图片
- · 苏州苏虹中路
- · 广工学生工作管理系统
- · 适合win7的office2003
- · 河北经贸大学专业排名
- · 电影林正英僵尸片
- · 动漫电影xiazai
- 赞助商链接