資源簡介
用C語言實(shí)現(xiàn)編譯原理中LL1文法分析算法
代碼片段和文件信息
#include“stdio.h“
#include“iostream“
#include“string“
#include“fstream“
#include“ctype.h“
#define?N?50
#include“word.h“
using?namespace?std;
#include“stack.h“
?
class?Line{//存一行文法
public:
char?Vn;//非終結(jié)符
string?form[10];//產(chǎn)生式
int?f;//產(chǎn)生式個(gè)數(shù)
Line()
{f=0;}
};
class?Gwf{//存一個(gè)文法的終結(jié)符和非終結(jié)符
public:
string?Vn;//非終結(jié)符
string?Vt;//終結(jié)符
int?Nn;//非終結(jié)符
int Nt;//終結(jié)符個(gè)數(shù)
Gwf(char?*LLname){
FILE?*fp=fopen(LLname“r“);
char?ch=fgetc(fp);
char?buf[200];
int?i=1;
while(ch!=EOF)
{ buf[i++]=ch;
ch=fgetc(fp);
}
buf[0]=‘\n‘;
buf[i]=‘\0‘;
fclose(fp);
for(i=0;i ch=buf[i];
if(isspace(ch)){
Vn.append(&buf[++i]1);
}
else?if(ch==‘-‘&&buf[i+1]==‘>‘)
i++;
else?if(isupper(ch)||ch==‘|‘||ch==‘@‘)
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件?????????88??2007-11-24?15:58??LL1文法分析\ex
?????文件?????????42??2007-11-15?19:02??LL1文法分析\LL.txt
?????文件???????8605??2008-04-21?19:47??LL1文法分析\LL1.cpp
?????文件????????475??2007-11-24?15:29??LL1文法分析\stack.h
?????文件???????2717??2004-08-06?21:12??LL1文法分析\word.h
?????目錄??????????0??2008-04-21?19:47??LL1文法分析
-----------?---------??----------?-----??----
????????????????11927????????????????????6
評論
共有 條評論