• 大小: 5KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-01-07
  • 语言: C/C++
  • 标签: 扫描程序  

资源简介

编译原理扫描程序,每个对应的关键字或者符号,数字都有对应的行输出

资源截图

代码片段和文件信息

#include
#include
#include//??
#include
#include

#define START 1    //初态
#define INNUM 2    //数字状态
#define INID 3     //标识符状态
#define INASSIGN 4 //赋值符号状态 
#define INCOMMENT 5//注释状态
#define DONE 6     //终态
#define bufsize 9999//缓存大小

int i=0jk=0n=0; //记录指针位置的全局变量

int read(FILE *frchar c[]int &i)
{
   c[i]=getc(fr); //将文件读入缓冲区
   while(c[i]!=EOF&&i   {        c[i]=getc(fr);
i++;
}
   if(i==bufsize)
   {   
       i--;
   while(c[i]!=‘\n‘)//文件超出缓冲区的大小,回退到最近一个完整的语句。
   {   i--;
       fseek(fr-11);//指针回退一格
   }
  // c[i+1]=‘\0‘;
  //fseek(fr11);
   return 1;
   }//文件大于缓冲区的大小,则分次读入缓冲区
   else 
   return 0;//文件已读完毕,结束

}

void readbyline(FILE *fwchar c[]int &n)
{
  do  /

评论

共有 条评论