新词法分析程序Word下载.docx
- 文档编号:3595704
- 上传时间:2023-05-02
- 格式:DOCX
- 页数:14
- 大小:23.43KB
新词法分析程序Word下载.docx
《新词法分析程序Word下载.docx》由会员分享,可在线阅读,更多相关《新词法分析程序Word下载.docx(14页珍藏版)》请在冰点文库上搜索。
struct
tag_keywordarray
/*
存放关键字
*/
{
char
a[20];
}keywordarray[10];
tag_token
/*
存放种别码和值的
int
sym;
symbol[10];
}token[100];
keywordarray
keyword={
"
begin"
"
end"
for"
if"
integer"
procedure"
read"
"
repeat"
var"
write"
};
static
token
token_PL;
cc=0;
j=0;
line[50];
ch;
bool
RLP=true;
main(void)
i;
for(i=0;
i<
j;
i++)
printf("
);
%d,"
token_PL.sym);
%s>
token_PL.symbol);
}
if(RLP==false)
printf("
\nNone
of
'
)'
\n"
system("
pause"
getsym()
k;
A[10];
id[10];
while(ch==NULL)
getch();
判断ch是否有字
while(ch!
='
\n'
)
{
if((ch>
A'
&
ch<
Z'
¦
(ch>
a'
z'
))
判断取出的字是否为字母
k=0;
A[k]=ch;
k=k+1;
while
(1)
0'
9'
if(k<
10)
}
else
k>
10则继续取词,但对后面的不错处理,截取前10个
cc-=1;
break;
for(i=0;
id=A;
id='
\0'
;
bool
bKeyword=false;
10;
if((stricmp(id,keyword.a))==0)
token_PL[j].sym=1;
strcpy(token_PL[j].symbol,keyword.a);
j=j+1;
bKeyword=true;
if(!
bKeyword)
token_PL[j].sym=2;
strcpy(token_PL[j].symbol,id);
if(ch>
判断是否为数字
token_PL[j].sym=4;
A[k]='
strcpy(token_PL[j].symbol,A);
是否为操作符
if(ch=='
+'
token_PL[j].sym=3;
A[k+1]='
if(ch=='
-'
*'
/'
:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 词法 分析 程序