用正则式描述C语言的各种词型,借助LEX工具实现C语...
1.输入是代码文件,输出是一个个的token。这些输出之后是供语法分析器(yacc,bison什么的)用的。2.做准备的话你可以看看《c专家编程》第3章:分析c语言的声明。这个例子是一个最简单的词法+语法分析器,足够给你一些提示了。当然这还不够,你可能要找一份C语言的标准来看。3.归类无非是修饰符、类型、关键字、标识符、运算符等等了。4.在2的基础上。不难解决。5.这个很简单。就算直接文件处理也解决掉了。依稀记得lex可能更容易做这件事儿。总体来说,这事儿如果自己做可能比较费劲,用lex应该省事不少。=========================================================================上面只是凭印象说的,希望对你有帮助。等等看有没有大牛帮你完成吧。或者等我有空咱们一起研究下。
实验目的:用正则式描述C语言的各种词型,借助LEX工具实现C语言的词法分析器。思考及要求:(1) 思考生成的C语言词法分析器的输入是什么,输出是什么?其输出供谁使用,如何使用?输入:一段C语言的程序。输出:单词符号(主要是识别关键字、标识符、常数、运算符、界符,过滤注释和空白);输出在一个中间文件上,作为语法分析程序的输入继续编译过程,以便供语法分析使用。(2) 需要做哪些准备,搜集C语言的哪些材料?安装Parser Generator 2和VC++编译环境,并配置相关环境。了解C语言的关键字、标识符、各种类型的常数、运算符以及所有的界符,同时还要知道2种注释的形式。(3) 对C语言的单词进行归类;关键字:也称基本字,包括begin,end,if,else,while,write,read,do,call,const,char,double,int,float,bool,until,return,goto,switch,case,long,short,static,continue,break,daflut,void,union(后续了解到的还会继续添加);标识符:用来表示的各种名字,如常量名、变量名和过程名。(例:int a;a就属于变量名);常数:各种类型的常数,整形(123),浮点型(3.14),bool型(TRUE),字符串(”ABC”),字符(’a’)等;运算符:如+,-,*,/,<,>,==,=,%;注释和空格:注释符号(//***********//或/* */);(4) 能识别词法错误;当开头为数字的后面为字母的字符串时,是错误的标识符。 (5) 能过滤掉C语言中的两种注释; 识别// //或/* */两种注释形式(6)设计一个测试,既能体现出每一类单词的处理结果,又能体现出对词法错误的处理,同时在测试中,打印出每一个单词的处理结果; 望仁兄采纳,万分感谢!
实验目的:用正则式描述C语言的各种词型,借助LEX工具实现C语言的词法分析器。思考及要求:(1) 思考生成的C语言词法分析器的输入是什么,输出是什么?其输出供谁使用,如何使用?输入:一段C语言的程序。输出:单词符号(主要是识别关键字、标识符、常数、运算符、界符,过滤注释和空白);输出在一个中间文件上,作为语法分析程序的输入继续编译过程,以便供语法分析使用。(2) 需要做哪些准备,搜集C语言的哪些材料?安装Parser Generator 2和VC++编译环境,并配置相关环境。了解C语言的关键字、标识符、各种类型的常数、运算符以及所有的界符,同时还要知道2种注释的形式。(3) 对C语言的单词进行归类;关键字:也称基本字,包括begin,end,if,else,while,write,read,do,call,const,char,double,int,float,bool,until,return,goto,switch,case,long,short,static,continue,break,daflut,void,union(后续了解到的还会继续添加);标识符:用来表示的各种名字,如常量名、变量名和过程名。(例:int a;a就属于变量名);常数:各种类型的常数,整形(123),浮点型(3.14),bool型(TRUE),字符串(”ABC”),字符(’a’)等;运算符:如+,-,*,/,<,>,==,=,%;注释和空格:注释符号(//***********//或/* */);(4) 能识别词法错误;当开头为数字的后面为字母的字符串时,是错误的标识符。 (5) 能过滤掉C语言中的两种注释; 识别// //或/* */两种注释形式(6)设计一个测试,既能体现出每一类单词的处理结果,又能体现出对词法错误的处理,同时在测试中,打印出每一个单词的处理结果; 望仁兄采纳,万分感谢!
文章标签:
来自:Lex常数
本文链接:https://www.u1e.cn/baike/a/4fa3cfd37f0c7fff6f0afd56 [复制]
猜你喜欢
寂寞是被原谅的罪,忘了是哪首歌里的句子,华丽的悲伤,至始至终爱与被爱都是伤害。
放弃了,就不应该后悔,失去了,就不该回忆。
夏天到了,我来到公园里玩,看见清清的湖水一波一波的荡漾着,鱼儿在湖水里游来游去。粉红的荷花张开了笑脸,碧绿碧绿的荷叶像大圆盘,远处有一孔石桥,石桥边有小山,小山上有一座凉亭,凉亭里的人们在快乐地喝茶。
我想要的未来,就是每天早上起床都能看见你和阳光都在。
生活辛苦,能找到一点阳光就快乐就好了;身体烦累,但是随时让自己心情舒畅,这是一个极好的能力,身累不致心累,生活还就是美好的。
有梦想的人睡不着,没梦想的人睡不醒。
Just because I don't want to be savage, it doesn't mean I have no temper.
最终你相信什么就能成为什么。因为世界上最可怕的二个词,一个叫执着,一个叫认真,认真的人改变自己,执着的人改变命运。只要在路上,就没有到不了的地方。
Teacher, engineer of human soul, who won't praise you!
心香三炷达苍冥,祈愿尘寰六合清。更愿佛光常注照,诸方好运享安宁!给您拜年了,祈愿您新年胜因善缘,吉祥安康!
寂寂闻猿愁,行行见云收。——李白《寻高凤石门山中元丹丘》
家声中垒也称贤,喜气临门敞绮筵,双璧联辉夸美眷,六葭应节缔良缘;女如五彩云犹丽,郎却斯文德自妍,恐负嘉招先作贺,诗题汤饼约明年。
不图虚名,不慕奢华。
不管发生什么,你都不要放弃,肯定会有意想不到的风景。也许不是你本来想走的路,可是另一条路有另一条路的风景,不要念念不忘原来的路,在这里你会遇到难忘的更好的风景。
在遥远的城市,陌生的地方,有他未曾见过的山和海。
俗话说:一百种人有一百种命运,有的人可以一条路一直走到底,有的人却注定要曲曲折折,不过谁也不需要羡慕谁。最重要的是:我们迟早会遇上。
人总要找点事情做,让自己忙起来,忙起来才知道生活不易,才明白平时的忧伤都是矫情。
等一阵风,等一阵雨,等一个唯一的你。
你们给我挺住,都别吃,都那么肥了怎么还有脸吃。
如果不醒来,那么现实和梦境又有何分别。
歇后语大全
针眼里看人是什么意思?
一桶开水烫在狗身上是什么意思?
野地里撵兔子是什么意思?
乡下人穿西装是什么意思?
五台山上拜佛是什么意思?
土地堂里填窟窿是什么意思?
提猪头进庙是什么意思?
酥油里插刀子是什么意思?
水牛抓跳蚤是什么意思?
屎壳螂爬在炭堆上是什么意思?
屎壳郎掉进阴沟里是什么意思?
烧红了生铁是什么意思?
上房拆梯子是什么意思?
山上钓鱼是什么意思?
傻子看戏是什么意思?
人家骑马我骑驴,后面还有推车的是什么意思?
娶媳妇死老娘是什么意思?
蜻蜓飞进蜘蛛网是什么意思?
敲锣紧跟打鼓的是什么意思?
蚂蚁嘴碾盘是什么意思?
马背上接电话是什么意思?
麻袋里的菱角是什么意思?
马蹄长瘤子是什么意思?
盲人干活是什么意思?
马陷淤泥是什么意思?
老母猪啃砖头是什么意思?
脸盆里扎猛子是什么意思?
老和尚的百衲衣是什么意思?
老鼠攻墙是什么意思?
喇叭嘴上塞泥巴是什么意思?
癞蛤蟆躲端午是什么意思?
叫花子睡凉亭是什么意思?
姜子牙开算命馆是什么意思?
机关枪打炮弹是什么意思?
耗子搬生姜是什么意思?
放长线是什么意思?
二两铁打把刀是什么意思?
断了弦的提琴是什么意思?
断了翅膀的鸟是什么意思?
滴水崖上滴水是什么意思?
戴着面具进棺材是什么意思?
大师傅蒸馍是什么意思?
吃着菠萝问酸甜是什么意思?
吃窝头就辣椒是什么意思?
扯乱了的线轴是什么意思?
茶壶有嘴是什么意思?
苍蝇掉进饭碗里是什么意思?
不到黄河心不死是什么意思?
拜堂的夫妻是什么意思?
案板上的狗肉是什么意思?
相关推荐
还没有人回应过