資源簡介
期末編譯原理課程設計,用C語言編寫的C-編譯器,語法分析采用遞歸向下

代碼片段和文件信息
/*?Main?program?for?the?C-?compiler?*/
#include?“globals.h“
#include?“util.h“
#include?“scan.h“
#include?“parse.h“
/*allocate?global?variables*/
int?lineno?=?0;
FILE*?source;?
FILE*?listing;??
int?EchoSource?=?TRUE;
int?TraceScan?=?TRUE;
int?TraceParse?=?FALSE;
int?Error?=?FALSE;
int?main(int?argc?char**?argv)
{
TreeNode?*?syntaxTree;
char?filename[20];
if(argc?2)
{
fprintf(stderr“Usage:?%s?\nNo_Parse?for?only?print?scan“?argv[0]);
exit(1);
}
strcpy(filenameargv[1]);
if(strchr(filename‘.‘)?==?NULL)
strcat(filename“.c-“);
source?=?fopen(filename“r“);
if(source?==?NULL)
{
fprintf(stderr“File?%s?not?found\n“filename);
exit(1);
}
listing?=?stdout;
fprintf(listing“**************C-?COMPILATION:?%s**************\n“filename);
if(TraceParse)
while?(getToken()!=ENDFILE);
else
{
syntaxTree?=?parse();
fprintf(listing“\nSyntax?tree:\n“);
printTree(syntaxTree);
}
????fclose(source);
return?0;
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????778??2009-12-11?23:38??Parsing\CMinus.idc
?????文件???????2277??2009-12-07?15:07??Parsing\globals.h
?????文件???????1022??2009-12-07?14:58??Parsing\main.cpp
?????文件??????10660??2009-12-11?23:36??Parsing\parse.cpp
?????文件????????196??2009-12-07?01:09??Parsing\parse.h
?????文件?????658432??2009-12-21?13:20??Parsing\Parsing.ncb
?????文件????????879??2009-12-03?18:56??Parsing\Parsing.sln
????..A..H.?????36864??2009-12-21?13:20??Parsing\Parsing.suo
?????文件???????6622??2009-12-14?15:01??Parsing\Parsing.vcproj
?????文件???????1425??2009-12-09?21:42??Parsing\Parsing.vcproj.BDanube-PC.B.Danube.user
?????文件???????1413??2009-12-21?13:20??Parsing\Parsing.vcproj.CHEN.Administrator.user
?????文件???????1425??2009-12-13?22:44??Parsing\Parsing.vcproj.chenhao-PC.chenhao.user
?????文件???????5640??2009-12-07?14:51??Parsing\scan.cpp
?????文件????????357??2009-12-06?21:20??Parsing\scan.h
?????文件????????268??2009-12-14?15:40??Parsing\test.c-
?????文件????????610??2009-12-13?23:03??Parsing\test02.c-
?????文件???????7346??2009-12-07?01:47??Parsing\util.cpp
?????文件????????998??2009-12-06?21:20??Parsing\util.h
?????文件??????????0??2009-12-14?15:38??Parsing\新建?文本文檔.txt
?????文件???????5662??2009-12-14?15:01??Parsing\Debug\BuildLog.htm
?????文件???????9560??2009-12-07?15:07??Parsing\Debug\main.obj
?????文件?????????69??2009-12-14?15:01??Parsing\Debug\mt.dep
?????文件??????30605??2009-12-11?23:36??Parsing\Debug\parse.obj
?????文件?????481792??2009-12-14?15:01??Parsing\Debug\Parsing.exe
?????文件????????406??2009-12-07?01:09??Parsing\Debug\Parsing.exe.em
?????文件????????472??2009-12-07?01:09??Parsing\Debug\Parsing.exe.em
?????文件????????381??2009-12-14?15:01??Parsing\Debug\Parsing.exe.intermediate.manifest
?????文件????2239488??2009-12-14?15:01??Parsing\Debug\Parsing.pdb
?????文件??????16082??2009-12-07?15:07??Parsing\Debug\scan.obj
?????文件????????270??2009-12-13?23:00??Parsing\Debug\test.c-
............此處省略7個文件信息
評論
共有 條評論