- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
词法分析器实验报告
词法分析实验报告班级: 姓名: 学号: 实验要求可以识别每个单词符号,并以记号形式输出;识别注释统计字符,单词,行,列数等检查错误并报告位置发现错误修正并恢复程序自动机设计如手写图片。程序源代码//词法分析器 by程闻博 //以下保留字以及运算符取自《C语言核心技术》; //部分位运算符( = =)未列入;//内存定位运算符 * 算作算数运算符;//char * keyword[34] = {auto, break, case, char, const, continue, default, do, double, else, enum, extern, float, for, goto, if, int, long, register, return, short, signed, sizeof, static, struct, switch, typedef, printf, union, unsigned, void, volatile, while, main};//保留字 //char * count_op[5] = {+, -, *, /, %};//算数运算符 //char * assignment_op[11] = {=, +=, -=, *=, /=, %=, =, ^=, |=};//赋值运算符 //char * self_op[2] = {++, --};//char * comparison_op[6] = {, =, , =, ==, !=};//比较运算符//char * logic_op[3] = {, ||, !};//逻辑运算符//char * bool_op[4] = {, |, ^, ~};//布尔位运算符//char * getmem_op[5] = {, ., -, [, ]};//内存定位运算符 //char * else_op[5] = {(, ), ?, :, ,};//其他运算符 //char * note[3] = {//, /*, */};//注释//char * sentence[3] = {;, {, }}//语句分割 #include stdio.h #include stdlib.h #include string.h#include ctype.h #include vectorusing namespace std;FILE *fp, *fpo;//文件指针 char curr;//读入的字符 int line, row;char temp[1000];int i = 0;int total_words, total_word;struct err{int line;int row;int mode;};typedef struct err err;vectorerr err_list;struct id_save{int times;char contain[1000];struct id_save* next;};typedef struct id_save* id_savePtr;id_savePtr id_list;void id_count(){int k;for(id_savePtr curr = id_list; curr-next != NULL; curr = curr-next){int flag = 1;for(k = 0; temp[k] != \0; k++){if(curr-contain[k] != temp[k]){flag = 0;break;}}if(flag == 1 curr-contain[k] == \0){curr-times++;return; }}id_savePtr curr2 = new(id_save);curr2-times = 1;for(k = 0; temp[k] != \0; k++){curr2-contain[k] = temp[k];}curr2-contain[k] = \0;curr2-next = id_list-next;id_list-next = curr2;}void output_id_list(){int j = 1;printf(id 统计\n);if(id_list-next != NULL)for(id_savePtr curr = id_list-next; curr-next != NULL; curr = curr-next){printf(NO.%d:%-30s%-30d \n, j, curr-contain, curr-times);j++;}}void bugreport(int reason){err temp;temp.line = line;t
您可能关注的文档
- 齿轮传动教案.doc
- 齿轮参数计算.docx
- 齿轮泵设计课程设计.doc
- 齿轮传动系统的故障诊断方法研究.doc
- 齿轮的检测.doc
- 诚信库申报操作手册.doc
- 齿轮行业市场发展现状以及未来发展前景趋势分析.doc
- 驰安硬件网络高清车牌识别解决方案.doc
- 齿轮基本术语中英文对照.doc
- 齿轮机构及其设计.doc
- 2025年贵州工业职业技术学院高职单招高职单招英语2016-2024历年频考点试题含答案解析.docx
- 2025年西昌民族幼儿师范高等专科学校高职单招职业适应性测试近5年常考版参考题库含答案解析.docx
- 2025年西藏警官高等专科学校高职单招语文2018-2024历年参考题库频考点含答案解析.docx
- 2025年贵州工商职业学院高职单招职业技能测试近5年常考版参考题库含答案解析.docx
- 2025年贵州工商职业学院高职单招职业适应性测试近5年常考版参考题库含答案解析.docx
- 2025年贵州农业职业学院高职单招数学历年(2016-2024)频考点试题含答案解析.docx
- 2025年贵州工商职业学院高职单招高职单招英语2016-2024历年频考点试题含答案解析.docx
- 2025年贵州工商职业学院高职单招语文2018-2024历年参考题库频考点含答案解析.docx
- 2025年许昌职业技术学院高职单招数学历年(2016-2024)频考点试题含答案解析.docx
- 2025年许昌职业技术学院高职单招职业技能测试近5年常考版参考题库含答案解析.docx
最近下载
- 《幼儿园游戏化课程实施策略研究国内外文献综述》4300字.docx
- 高一人音版音乐教学:《欧洲与拉丁美洲音乐》教学设计.doc
- 电力机车制动机03.pptx VIP
- 电力机车制动机04.pptx VIP
- 四川省成都市成华区2022-2023学年九年级上学期期末化学试卷.docx VIP
- 2022-2023学年四川省成都市青羊区九年级上学期期末考试化学试卷含详解.pdf VIP
- 污水处理系统的防火防爆(必威体育精装版版).docx VIP
- 四川省成都市学校2023-2024学年九年级上学期期末化学试卷(含解析).pdf VIP
- 53天天练六年级数学下册课堂练(人教)附答案解析.doc
- 中考数学备考策略与方法.pptx VIP
文档评论(0)