中山大学数据科学与计算机学院本科生实验报告
课程名称:编译器构造实验 任课教师:陈炬桦
一、 实验题目
词法分析程序设计
1.1 Description
设一语言的关键词、运算符、分界符的个数与单词如下:
struct { int number; string str[10]; } keywords={3,"int","main","return"} ; //
关键词
struct { int number; string str[10]; } operators ={5,"+","*","=","+=","*="}; //
运算符
struct { int number; string str[10]; } boundaries ={6,"(",")","{","}",",",";"} ; //
分界符
struct { int number; string str[100];} identifieres={0}; //标识符
struct { int number; string str[100];} Unsigned_integer={0}; //无符号整数
以上类号分别为 1~5,序号从 0 开始;
标识符是字母开头的字母数字串;常量为无符号整数;
用 C++设计一程序实现词法分析。
1.2 Input
输入一程序,结束符用”#”;
1.3 Output
输出单词数对:<类号,序号>。 输出标识符表,用空格分隔; 输出
无符号整数表,用空格分隔;
评论0