整型常量
!
" #
!
$
%
" !&' % $
!() %" **
%( " ++ ++
( , **
- ,- + .
" # +
/ 0 * 1
2 3 * 4
) 5 !6
7 !8 %
) !* % !9:
!" %; . !<
%-" 8 !
=
3、关键数据结构的描述
计数器 count:将二元组写入文件时通过 count 判断是否是首次写入,若是
则清空文件,否则追加写入;
字符串常量 endStr:其值为“end,在分析判断每一单词的种类时,该字符
串作为 rwtab 表的结束标志;
数组 prog[200]:暂存从文件中读取的源程序代码,该词法分析器约定源代
码长度不超过 199;
数组 token[20]:暂存每次分离出的单个具有独立意义的单词,该词法分析
器约定每个单词的长度不超过 19;
结构体 result:存放一个单词的种别码和单词本身的值,在写入文件时以结
构体中的元素为单位依次写入;
4、程序结构的描述
本程序采用结构化设计方法,共有两个文件,六个模块,分别介绍如下:
rwtab.h 文件包含一个模块,即各种单词符号对应的种别码,作为外部文件
被 main.cpp 文件引用。
main.cpp 文件包含以下五个平行模块:
1) main()函数:程序入口,控制整个程序的执行流程;
2) scanner()函数:词法扫描程序;
3) print()函数:由 main()函数调用,判别每一个已识别单词的种类,并将
其以结构体形式标准化;
4) readFromFile()函数:由 main()函数调用,将源程序代码读出,并暂存至
数组 prog[200]中;
评论0