好文档 - 专业文书写作范文服务资料分享网站

天津理工大学编译原理实验3语义分析与中间代码生成

天下 分享 时间: 加入收藏 我要投稿 点赞

cout<<\sentence.\

return -1; } }

char getraw_content(string str) {

if(str==\return '1'; else if(str==\return '2'; else if(str==\return '3'; else if(str==\return '4'; else if(str==\return 'c'; else if(str==\return 'd'; else if(str==\return 'e'; else if(str==\return 'f'; else if(str==\

return 'g'; else if(str==\return 'h'; 第6页 共16页 else if(str==\return 'i'; }

string get_tx(int num) {

switch(num) { case 1: return \case 2: return \case 3: return \case 4: return \case 5: return \case 6: return \case 7: return \

case 8: return \case 9: return \case 10: return \case 11: return \case 12: return \case 13: return \case 14: return \case 15: return \case 16: return \

//......本程序暂时用到这么多,等有时间编写合适的可以将数字转换为字符串的函数时,即

可更改本函数 } }

第7页 共16页

void show(char str[size],int index) { int length=getLength(str); if(index!=-1) cout<<\

for(int i=index+1;i

void showc(char_stack str[size],int index) {

int length=getLengthc(str); if(index!=-1) cout<<\

for(int i=index+1;i

void switch_method(char_stack *stack,int *pointer,char *state_stack,int *pointer_state,string

production,char *str,int *index) { step++;

cout<<\显示步骤 show(state_stack,-1);//显示状态栈 cout<<\

showc(stack,-1);//显示符号站

cout<<\显示当前字符

show(str,(*index));//显示输入串 char c=str[(*index)]; if(production==\{

cout<<\sentence.\

return ; }

else if(production==\{

char sx='5'; (*index)++;

pushstack(stack,pointer,state_stack,pointer_state,c,sx,0); }

else if(production==\{

char sx='6'; (*index)++;

pushstack(stack,pointer,state_stack,pointer_state,c,sx,0); 第8页 共16页 }

else if(production==\{

char sx='7';

天津理工大学编译原理实验3语义分析与中间代码生成

cout<<\sentence.\return-1;}}chargetraw_content(stringstr){if(str==\return'1';elseif(str==\return'2';elseif(str==\return'3';elseif(str==\return'4';el
推荐度:
点击下载文档文档为doc格式
41cx23063c81m9s40mcz3j4le87mw200j6b
领取福利

微信扫码领取福利

微信扫码分享