freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

編譯原理簡單編譯器課程設(shè)計報告畢業(yè)論文-在線瀏覽

2024-08-06 18:47本頁面
  

【正文】 g1[10]。 char arg2[10]。 //結(jié)構(gòu)體數(shù)組void scanner()。 void staBlock(int *nChain)。 //語句串void sta(int *nChain)。 //賦值語句void tiaojian(int *nChain)。 //循環(huán)語句char* E()。 //Term項char* F()。 //自動生成臨時變量void backpatch(int p,int t)。 //合并p1和p2void emit(char *res,char *num1,char *op,char *num2)。 count=0。 index=0。 kk=0。 do{ ch=getchar()。 }while(ch!=39。)。 isError=0。 lrparser()。inextq。 printf((%5s %5s %5s \t%5s )\n,fourCom[i].arg1,fourCom[i].opera,fourCom[i].arg2,fourCom[i].result)。 nfc=ntc=1。 if(syn==1) //main { scanner()。 if(syn==27) //) { scanner()。nChain)。 } else printf(缺少左括號\n)。}//語句塊 ::= 39。語句串39。void staBlock(int *nChain) //語句塊{ if(syn==28) //{ { scanner()。 //backpatch(*nChain,nextq)。 //讀下一個 else printf(缺少}號\n)。}//語句串::=語句{。void staString(int *nChain) //語句串{ sta(nChain)。 while(syn==31) //。 sta(nChain)。}void sta(int *nChain) //語句{ if(syn==10) { fuzhi()。 } else if(syn==6) //if { tiaojian(nChain)。}//條件語句if(條件)語句塊void tiaojian(int *nChain){ char res[10],num1[10],num2[10],op[10]。 //條件表達式關(guān)系運算符表達式 if(syn==6) //if { scanner()。 if(syn==26) //( { scanner()。 if((syn=37)amp。(syn=32)) { switch(syn) { case 32: strcpy(op,)。 case 33: strcpy(op,=)。 case 34: strcpy(op,)。 case 35: strcpy(op,=)。 case 36: strcpy(op,==)。 case 37: strcpy(op,!=)。 default: printf(error)。 strcpy(num2,E())。 strcat(num1,num2)。 ntc=nextq。 nfc=nextq。 //第一個0已回填 backpatch(ntc,nextq)。 staBlock(amp。 //語句塊 *nChain=merge(nChainTemp,nfc)。 int nChainTemp。 //記住if語句位置,emit之后nextq就變了 //emit(0,if,num1,goto)。 staBlock(amp。 //語句塊 if(syn==9) //while { scanner()。 strcpy(num1,E())。amp。 break。 break。 break。 break。 break。 break。 } } scanner()。 strcat(num1,op)。 nnb=nextq。 backpatch(nnb,nnc)。 emit(0,goto)。 } if(syn==27) //) scanner()。 //num操作數(shù) if(syn==10) //字符串 { strcpy(res,token)。 if(syn==21) //= { scanner()。 emit(res,num,=,)。 } }}char* E() //Expression表達式{ char *res,*num1,*op,*num2。 num1=(char *)malloc(10)。 num2=(char *)malloc(10)。 while((syn==22)||(syn==23)) //+ { if(syn==22) //+ strcpy(op,+)。 scanner()。 strcpy(res,newTemp())。 strcpy(num1,res)。}char* T() //Term項{ char *res,*num1,*op,*num2。 num1=(char *)malloc(10)。 num2=(char *)malloc(10)。 while((syn==24)||(syn==25)) //* / { if(syn==24) strcpy(op,*)。 scanner()。 strcpy(res,newTemp())。 strcpy(num1,res)。}char* F() //Factor因子{ char *res。 if(syn==10) //字符串 { strcpy(res,token)。 } else if(syn==20) //二進制數(shù) { itoa((int)sum,res,10)。 } else if(syn==26) //( { scanner()。 if(syn==27) //) { scanner()。 } else isError=1。}char *newTemp(){ char *p。 p=(char *)malloc(10)。 itoa(kk,varTemp,10)。 p[0]=39。 return p。 while(circle) //circle不為0的時候 { w=atoi(fourCom[circle].result)。 //把t填進四元式circle的第四分量 sprintf(fourCom[circle].result,%d,t)。 //w記錄的是鏈條上下一個四元式,移動! } return。 if(p2==0) nRes
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1