91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 148KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2024-02-01
  • 語言: 其他
  • 標簽:

資源簡介

哈工大威海編譯原理實驗報告和源代碼: 實驗一 詞法分析 實驗二 語法分析 實驗三 語義分析和中間代碼生成 附有代碼和實驗報告~僅供參考~

資源截圖

代碼片段和文件信息

#include??
#include??
#include???
#include????
using?namespace?std;??

#define??MAX?50????//長度最大值?50?????????
char?ch?=‘?‘;??????//??空格

string?keyword[50]={“else““if““int“};//關鍵字為else,if,int
????????????

int?alphabet(char?c)?{??//字母的處理過程????
????if(((c<=‘z‘)&&(c>=‘a‘))||((c<=‘Z‘)&&(c>=‘A‘)))?
return?1;?
????else?
return?0;
}


int?KeyWord(string?c){??????//關鍵字的處理過程??
???int?i;
???for(i=0;i??????if(keyword[i].compare(c)==0)
??return?1;??
???????}?
????return?0;
}


int?num(char?c){????????//數字的處理過程
?????if(c>=‘0‘&&c<=‘9‘)?
?return?1;?
?????else?
?return?0;
}


void?operation(FILE?*fpin){//運算符處理過程
ofstream?out(“token.txt“ios::out);?
????string?arr=““;?????????????????????????
?while((ch=fgetc(fpin))!=EOF)?{?????????????
????????????arr=““;?????????????????????????
?????????if(ch==‘?‘||ch==‘\t‘||ch==‘\n‘){}???//空格,縮進,換行,均不做操作???
?????????else?if(alphabet(ch)){????????????????????
???????????????while(alphabet(ch)||num(ch))?{??????
???????????????????????arr=arr+ch;???????????
????????????????????ch=fgetc(fpin);??????????
???????????????????????????????}
??????????fseek(fpin-1LSEEK_CUR);????????//循環結束后,重定位流指針從當前位置左移一位。開始判斷新的輸入是什么類型?
??????if?(KeyWord(arr)){out<???????else??out<???????????????}

?else?if(num(ch)){?????????????//若是數字
??????????????????while(num(ch)||ch==‘.‘&&num(fgetc(fpin))||fgetc(fpin)==‘e‘||ch==‘e‘)
??{???
??if(ch==‘.‘)????
??fseek(fpin-1LSEEK_CUR);//指針左移
??arr=arr+ch;
?if(ch==‘e‘)?????
??{??
??ch=fgetc(fpin);?//?新讀入
?
??if(?ch==‘+‘)?arr+=‘+‘;
??else?{arr+=‘-‘?fseek(fpin-1LSEEK_CUR);};//指針左移 ??
??}
????????????????????????ch=fgetc(fpin);?
??????????????????}?? ???
??????????????????fseek(fpin-3LSEEK_CUR);??
??????????????????out<?????????????}
???????else?switch(ch){??????????
???????????????case‘+‘:
???????????????case‘-‘?:
???????????????case‘*‘?:
???????????????case‘=‘?:
???????????????case‘/‘?:out<???????????????case‘(‘?:
???????????????case‘)‘?:
???????????????case‘[‘?:
???????????????case‘]‘?:? ???
???????????????case‘;‘?:
???case‘#‘?:
???????????????case‘.‘?:
???????????????case‘‘?:
???????????????case‘{‘?:
???????????????case‘}‘?:out< ???
case?‘“‘:{
????string?string1=““;
??do?
???{
???string1+=ch;
??ch=fgetc(fpin);
??}?while?(ch!=‘“‘);//循環得到?““
??string1+=ch;??????????
out< ???}break;?

???case‘:‘?:{ch=fgetc(fpin);
???if(ch==‘=‘)?out<<“:=“<<“????\t4“<<“\t運算符“<
else?{out<<“=“<<“????\t4“<<“\t運算符“<???
?fseek(fpin-1LSEEK_CUR);}?//當指針回退一個字符
????????????????????????}break;?
????
??case

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????4836??2014-05-19?20:16??編譯原理\實驗1?詞法分析\CiFa.cpp

?????文件???????3377??2014-05-19?21:38??編譯原理\實驗1?詞法分析\CiFa.dsp

?????文件????????516??2014-05-19?21:38??編譯原理\實驗1?詞法分析\CiFa.dsw

?????文件??????41984??2014-05-19?21:38??編譯原理\實驗1?詞法分析\CiFa.ncb

?????文件??????48640??2014-05-19?21:38??編譯原理\實驗1?詞法分析\CiFa.opt

?????文件???????1176??2014-05-19?21:38??編譯原理\實驗1?詞法分析\CiFa.plg

?????文件?????????72??2014-05-19?12:29??編譯原理\實驗1?詞法分析\test.txt

?????文件????????638??2014-05-19?21:38??編譯原理\實驗1?詞法分析\token.txt

?????文件??????11258??2014-05-19?20:49??編譯原理\實驗2?語法分析\GT.CPP

?????文件???????3353??2014-05-19?21:35??編譯原理\實驗2?語法分析\GT.DSP

?????文件????????512??2014-05-19?21:38??編譯原理\實驗2?語法分析\GT.DSW

?????文件??????41984??2014-05-19?21:38??編譯原理\實驗2?語法分析\GT.ncb

?????文件??????48640??2014-05-19?21:38??編譯原理\實驗2?語法分析\GT.OPT

?????文件???????1160??2014-05-19?21:35??編譯原理\實驗2?語法分析\GT.PLG

?????文件?????????32??2014-05-19?20:34??編譯原理\實驗2?語法分析\MP.txt

?????文件?????????22??2014-05-19?21:35??編譯原理\實驗2?語法分析\PLMP.txt

?????文件?????????32??2014-05-19?20:29??編譯原理\實驗2?語法分析\PM.txt

?????文件?????????60??2014-05-19?21:35??編譯原理\實驗2?語法分析\RP.txt

?????文件?????????22??2014-05-19?20:49??編譯原理\實驗2?語法分析\SP.txt

?????文件??????24915??2014-05-19?21:20??編譯原理\實驗3?語義分析和中間代碼生成\GG.CPP

?????文件???????3353??2014-05-19?21:37??編譯原理\實驗3?語義分析和中間代碼生成\GG.DSP

?????文件????????512??2014-05-19?21:37??編譯原理\實驗3?語義分析和中間代碼生成\GG.DSW

?????文件??????50176??2014-05-19?21:37??編譯原理\實驗3?語義分析和中間代碼生成\GG.ncb

?????文件??????48640??2014-05-19?21:37??編譯原理\實驗3?語義分析和中間代碼生成\GG.OPT

?????文件???????1327??2014-05-19?21:37??編譯原理\實驗3?語義分析和中間代碼生成\GG.PLG

?????文件????????138??2014-05-19?21:37??編譯原理\實驗3?語義分析和中間代碼生成\string.txt

?????文件?????????96??2014-05-19?21:30??編譯原理\實驗3?語義分析和中間代碼生成\test.txt

?????文件????????253??2014-05-19?21:37??編譯原理\實驗3?語義分析和中間代碼生成\token.txt

?????文件?????215603??2014-05-27?23:03??編譯原理\實驗報告.doc

?????目錄??????????0??2014-05-19?21:38??編譯原理\實驗1?詞法分析

............此處省略6個文件信息

評論

共有 條評論