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

  • 大小: 312KB
    文件類型: .rar
    金幣: 2
    下載: 1 次
    發(fā)布日期: 2021-08-31
  • 語言: C/C++
  • 標(biāo)簽:

資源簡(jiǎn)介

編譯原理第一個(gè)實(shí)驗(yàn),用C語言編寫的詞法分析器(附源文件)。輸入一串字符,可以識(shí)別出關(guān)鍵字、運(yùn)算符,標(biāo)識(shí)符等。

資源截圖

代碼片段和文件信息

#include
#include
#include
#include
#include
#define?letter(a)?str[a]>=‘A‘&&str[a]<=‘Z‘||str[a]>=‘a(chǎn)‘&&str[a]<=‘z‘
#define?digit(a)?str[a]>=‘0‘&&str[a]<=‘9‘
const?int?S=200;
void?main()
{

char?keyword[][5]={“DIM““IF““DO““STOP““END“};
char?str[S]id[50]s[25];
int?choicem=0n=0flag=0;
cout<<“請(qǐng)選擇?:\n1.從文件中讀取源程序\n2.通過鍵盤輸入源程序\n“;
cin>>choice;
while(choice!=1&&choice!=2)
{
cout<<“\t\t警告??!輸入不合法,重新新輸入!\n“;
cin>>choice;
}
if(choice==1)
{
ifstream?infile(“sourcefile.txt“);
if(!infile)
{
cout<<“打開失敗!“;
abort();
}
infile.getline(strS‘#‘);
infile.close();
}
else
{
cin.get();
cout<<“請(qǐng)輸入源程序,以“#”結(jié)束\n“;
cin.getline(strS‘#‘);
}
ofstream?outfile(“objectfile.txt“ios::out);
if(!outfile)
{
cout<<“打開失敗!“;
abort();
}
for(int?i=0;str[i];i++)
{
if(str[i]==‘?‘)?;
else?if(str[i]==‘\n‘)?;
else?if(letter(i))?
{
id[m++]=str[i++];
while(letter(i)||digit(i))
id[m++]=str[i++];
id[m]=‘\0‘;
i--;
for(int?l=0;l<5;l++)
if(!strcmp(idkeyword[l]))
{
cout<<“<$“<“< outfile<<“<$“<“< flag=1;
}
if(flag==0)

cout<<“<$ID“<“< outfile<<“<$ID“<“<
m=0;
flag=0;
}
else?if(digit(i))?
{
s[n++]=str[i++];
while(digit(i))
s[n++]=str[i++];
s[n]=‘\0‘;i--;
int?a=0c[78]w=n-1;?
char?*p;
for(p=s;*p;p++w--)
a=a+(int)pow(10w)*(*p-48);
w=0;
while(a)
{
int?b=a%2;
c[w++]=b;
a/=2;
}
cout<<“<$INT“;
outfile<<“<$INT“;
for(w=w-1;w>=0;w--)
{cout< cout<<“>\n“;
outfile<<“>\n“;
n=0;
}
else?if(str[i]==‘=‘)?{cout<<“<$ASSIGN->“<“< else?if(str[i]==‘+‘)?{cout<<“<$PLUS->“<“< else?if(str[i]==‘*‘)
{
if(str[i+1]==‘*‘)?{cout<<“<$POWER->“<“< else?{cout<<“<$STAR->“<“< }
else?if(str[i]==‘‘)?{cout<<“<$COMMA->“<“< else?if(str[i]==‘(‘)?{cout<<“<$LPAR->“<“< else?if(str[i]==‘)‘)?{cout<<“<$RPAR->“<“< else?{cout<<“ERROR!“< }

outfile.close();
}

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件??????50176??2010-11-16?21:23??詞法分析器\Debug\vc60.idb

?????文件??????61440??2010-10-02?16:44??詞法分析器\Debug\vc60.pdb

?????文件?????262195??2010-10-13?12:44??詞法分析器\Debug\詞法分析器.exe

?????文件?????305940??2010-10-13?12:44??詞法分析器\Debug\詞法分析器.ilk

?????文件??????18718??2010-10-13?12:44??詞法分析器\Debug\詞法分析器.obj

?????文件?????302856??2010-10-02?15:46??詞法分析器\Debug\詞法分析器.pch

?????文件?????590848??2010-10-02?16:44??詞法分析器\Debug\詞法分析器.pdb

?????文件?????????17??2010-11-16?21:24??詞法分析器\objectfile.txt

?????文件?????????61??2010-10-02?16:05??詞法分析器\sourcefile.txt

?????文件???????2516??2010-10-02?16:44??詞法分析器\詞法分析器.cpp

?????文件???????3451??2010-10-02?16:37??詞法分析器\詞法分析器.dsp

?????文件????????528??2010-10-02?16:44??詞法分析器\詞法分析器.dsw

?????文件??????41984??2010-11-16?21:28??詞法分析器\詞法分析器.ncb

?????文件??????48640??2010-11-16?21:28??詞法分析器\詞法分析器.opt

?????文件????????254??2010-10-13?12:45??詞法分析器\詞法分析器.plg

?????目錄??????????0??2010-10-03?21:55??詞法分析器\Debug

?????目錄??????????0??2010-11-16?21:28??詞法分析器

-----------?---------??----------?-----??----

??????????????1689624????????????????????17


評(píng)論

共有 條評(píng)論

相關(guān)資源