- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理-词法分析代码(vc)(Compilertheory-lexicalanalysiscode(vc))
编译原理-词法分析代码(vc++)(Compiler theory - lexical analysis code (vc++))
Time: 2012-10-30 nights
Requirements: enter a string of strings, lexical analysis, and in accordance with the string / numbers format to output
Species coding:
Symbol, species, symbol, species, symbol, species
Begin 1 + 13 = 22
If 2-14 23
Then 3 * 15 = 24
While 4 / 16 = 25
Do 5:17; 26
End 6: = 18 (27)
L (l|d) * 10, 20) 28
The 11 digital # 0 21
The formal type of digital lexical are as follows: (+|-| epsilon) dd* (.Dd* | epsilon) (E (+|-| epsilon) dd*| epsilon)
PS: input string to #.
Running environment: VC++6.0
Explanation: most of the digital part of the search for resources on the web is in the form of dd*, but this experiment requires form, and has done a great deal of effort in the digital part. Unlike the dd* form, there are three places -- ch is numeric, ch is +, then numeric, and ch is - followed by numeric form. However, due to the limited level, a relatively short time, each plus or minus must be in the input digital sign, otherwise it will default + - sign instead of plus and minus. I hope there is a simple way to solve the problem.
Source code:
#include stdio.h / / I/O library used to define some of the macro variables and
#include string.h / / String library function
#include math.h / / definition of Mathematical Symbols Library
Char, prog[80], token[8]; //prog: buffer;
Token: a meaningful string
Char ch; //ch: the currently processed characters
Int, syn, P, m, N, F, e;
//syn: categories: P, m, N: count variables, F, sign numbers, plus and minus numbers, e, 10, and so on
Double, sum, //sum, numbers
Char *rwtab[6]={, begin, if, then, while, do, end};
The basic table / / initialize
Void main (void) / main function
{
Void scaner (void); / / statement function
P=0;
Printf (\n, enter string: \n);
Do{/ / input buffer
Ch=getchar ();
Prog[p++]=ch;
}while (CH =#!);
P=0;
Do{/ / lexical analysis and output results
Scaner ();
Switch (SYN)
{
Case 11:printf ((%2d,%16g) \n, syn, sum); break;
您可能关注的文档
- 结构设计标准(Structural design standard).doc
- 给婴儿买衣服要注意事项!(Attention should be paid to buying clothes for the baby!).doc
- 给宝宝吃水果的学问(Knowledge of eating fruit for the baby).doc
- 经纬度与3度带,6度带的概念及其转换方法(The concept of latitude and longitude and 3 degree belts and 6 degrees belts and their conversion methods).doc
- 给力流行语(Awesome buzzwords).doc
- 给我七朵花(Give me seven flowers).doc
- 给排水工程中的阀门选用知识(Knowledge of valve selection in water supply and drainage works).doc
- 给我一斤面粉 还你5碗凉皮(Give me a pound of flour do 5 cold noodle bowl).doc
- 给排水说明及工程量计算规则(Specification of water supply and drainage and calculation rules of quantities).doc
- 给系统添加查看ai、psd、cdr、eps图片缩略图功能(Add AI, PSD, CDR and EPS thumbnail images to the system).doc
最近下载
- 2024年上海市普通高校招生本科艺术甲批次平行段院校专业组投档分数线美术与设计类.pdf VIP
- 2024入团共青团基础知识题库(含答案).docx
- 2024年在线网课学习课堂《健康管理科研思维训练(杭州师大 )》单元测试考核答案.pdf
- 2024年中国河南国际合作集团有限公司人员招聘考试题库及答案解析.docx
- 《骆驼祥子》读书分享PPT课件(精选图文).pptx
- 汉长安城遗址总体规划.pptx
- 欠钱不还的法院起诉书.docx VIP
- GB-T 10125-2012 人造气氛腐蚀试验 盐雾试验.pdf
- 新人教版七年级上册生物全册教案(2024年秋季新版教材).docx
- pcs-9651_080885技术和使用说明书.pdf
文档评论(0)