• 大小: 32KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-01-05
  • 语言: C/C++
  • 标签: 词法分析  

资源简介

一、 实验目的 调试并完成一个词法分析程序,加深对词法分析原理的理解。 二、 实验要求 1、 待分析的简单语言的词法 (1) 关键字: begin if then while do end 所有关键字都是小写。 (2) 运算符和界符: := + – * / < <= <> > >= = ; ( ) # (3) 其他单词是标识符(ID)和整型常数(NUM),通过以下正规式定义: ID=letter(letter| digit)* NUM=digit digit * (4)空格由空白、制表

资源截图

代码片段和文件信息

#include
#include
#include

char prog[80]token[8];
char ch;
int synpm=0nsum=0; //p是缓冲区prog的指针,m是token的指针
char *rwtab[6]={“begin““if““then““while““do““end“};


void scaner()
{
    for(n=0;n<8;n++) token[n]=NULL;
    ch=prog[p++];

    while(ch==‘ ‘)
        ch=prog[p++];

    if((ch>=‘a‘&&ch<=‘z‘)||(ch>=‘A‘&&ch<=‘Z‘))
    {
        m=0;
        while((ch>=‘A‘&&ch<=‘Z‘)||(ch>=‘a‘&&ch<=‘z‘)||(ch>=‘0‘&&ch<=‘9‘))
        {
            token[m++]=ch;
            ch=prog[p++];
        }

        token[m++]=‘\0‘;
        p--;
        syn=10;

        for(n=0;n<6;n++)
            if(strcmp(tokenrwtab[n])==0)
            {
                syn=n+1;
                break;
            }
    }
    else
    if((ch>=‘0‘&&ch<=

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3211  2009-05-26 16:33  实验1.词法分析\cifa.c

     文件      10760  2009-05-26 16:33  实验1.词法分析\CIFA.EXE

     文件      58368  2009-11-13 16:16  实验1.词法分析\实验1.  词法分析实验报告.doc

     文件     657270  2009-05-26 16:44  实验1.词法分析\词法分析结果验证1.jpg

     文件     651402  2009-05-26 18:06  实验1.词法分析\词法分析结果验证2.jpg

     目录          0  2009-11-13 16:16  实验1.词法分析

----------- ---------  ---------- -----  ----

              1381011                    6


评论

共有 条评论