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

正文內(nèi)容

編譯原理課程設(shè)計-wenkub.com

2025-01-14 01:33 本頁面
   

【正文】 break。 case39。39。: syn=30。 token[m++]=ch。 break。 case 39。)39。 repeat=1。 repeat=1。 token[m++]=ch。 break。 case 39。) { isSignal=1。) { isSignal=2。: temp2=prog[p]。 //讀下一個字符 } syn=23。))amp。 //轉(zhuǎn)到數(shù)字的識別 } if(((temp2==39。(repeat==1)) { isSignal=1。(temp2=39。 if((temp2=39。 case 39。(repeat==0)) //如果重復(fù)出現(xiàn)符號,才將后邊的+,視為正負號 { repeat=1。)||(temp2==39。 repeat=0。)amp。)amp。: temp2=prog[p]。 p。=39。: m=0。 p。=39。: m=0。 p。=39。: m=0。 } p。是錯誤的 if(isNegative) sum=sum*pow(,index)。)) { //指數(shù) index=index*10+ch39。)amp。) { isNegative=1。) { isExp=1。 } if(ch==39。 decimal=decimal+temp。939。039。) { isDecimal=1。039。amp。39。amp。 break。 //回退一格 syn=10。 //ch=token ch=prog[p++]。amp。Z39。A39。amp。Z39。A39。amp。) //跳過空字符(無效輸入) ch=prog[p++]。 //從prog中讀出一個字符到ch中 while(ch==39。 for(n=0。 nextq++。 //p2是頭,p1覆蓋0,接在p2后邊}void emit(char *res,char *num1,char *op,char *num2){ strcpy(fourCom[nextq].result,res)。 while(atoi(fourCom[circle].result)) //四元式第四個分量不為0 { circle=atoi(fourCom[circle].result)。 //w記錄的是鏈條上下一個四元式,移動! } return。 while(circle) //circle不為0的時候 { w=atoi(fourCom[circle].result)。 p[0]=39。 p=(char *)malloc(10)。 } else isError=1。 } else if(syn==26) //( { scanner()。 if(syn==10) //字符串 { strcpy(res,token)。 strcpy(num1,res)。 scanner()。 num2=(char *)malloc(10)。}char* T() //Term項{ char *res,*num1,*op,*num2。 strcpy(res,newTemp())。 while((syn==22)||(syn==23)) //+ { if(syn==22) //+ strcpy(op,+)。 num1=(char *)malloc(10)。 emit(res,num,=,)。 //num操作數(shù) if(syn==10) //字符串 { strcpy(res,token)。 emit(0,goto)。 nnb=nextq。 } } scanner()。 break。 break。 break。 strcpy(num1,E())。 staBlock(amp。 int nChainTemp。 staBlock(amp。 nfc=nextq。 strcat(num1,num2)。 default: printf(error)。 case 36: strcpy(op,==)。 case 34: strcpy(op,)。(syn=32)) { switch(syn) { case 32: strcpy(op,)。 if(syn==26) //( { scanner()。}//條件語句if(條件)語句塊void tiaojian(int *nChain){ char res[10],num1[10],num2[10],op[10]。}void sta(int *nChain) //語句{ if(syn==10) { fuzhi()。 while(syn==31) //。}//語句串::=語句{。 //backpatch(*nChain,nextq)。語句串39。 } else printf(缺少左括號\n)。 if(syn==27) //) { scanner()。 nfc=ntc=1。inextq。 isError=0。 }while(ch!=39。 kk=0。 count=0。 //自動生成臨時變量void backpatch(int p,int t)。 //循環(huán)語句char* E()。 //語句串void sta(int *nChain)。 //結(jié)構(gòu)體數(shù)組void scanner()。 //字符串(字符數(shù)組) char arg1[10]。int kk。 //是否帶負號 double temp。 //是否是小數(shù) double decimal。 int count。 //存放所有輸入字符 char token[8]。個人認為這次課設(shè)的機會非常寶貴,加深了我對編譯器處理語言的過程的理解。而且好像沒有預(yù)期中困難,可能是有條件語句的鋪墊吧。接下來又是開發(fā)停滯的一段時間,直到11月18日。再后來利用上機的時間,請教了一下老師和另外一個同學(xué),發(fā)現(xiàn)課本后給的樣例程序是錯的,而且錯得一塌糊涂。對于賦值語句的翻譯,課本上有詳細的講解,有代碼的簡單舉例。采用遞歸下降的語法制導(dǎo)翻譯法,實現(xiàn)了對賦值表達式的語義分析,并生成四元式。運動會3天假,時間全用來啃課本了。雖然之前實驗時候,詞法分析程序和語法分析程序的代碼都是自己一個一個敲的。 } if(syn==27) //) scanner()。 backpatch(nnb,nnc)。 strcat(num1,op)。 break。 break。 break。amp。 //語句塊 if(syn==9) //while { scanner()。 //記住if語句位置,emit之后nextq就變了 //emit(0,if,num1,goto)。 }}8. void xunhuan()該函數(shù)的功能是對循環(huán)語句進行分析。 //ntc鏈接的所有四元式都回填nextq } if(syn==27) //) scanner()。 //記住if語句位置 emit(0,if,num1,goto)。 strcat(num1,op)。 break。 break。 break。amp。 //strcpy(num1,E())。 } }}7. void tiaojian(int *nChain)該函數(shù)的功能是對條件語句進行分析。 if(syn==21) //= { scanner()。}6. void fuzhi()該函數(shù)的功能是對賦值語句進行分析。 //四元式circle第四分量內(nèi)容 //strcpy(fourCom[circle].result,t)。 } //目的是用p1的值覆蓋0 } return nResult。 else { nResult=circle=p2。 //字符串前加T,便于識別 return p。 itoa(kk,varTemp,10)。 /
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1