?? s.cpp
字號:
#include <stdlib.h>
#include <stdio.h>
#include <iostream.h>
#include <string.h>
int flag=0;
char cch;
char bchar;
char str[100];
FILE *fp;
void Pushback(char c)//放回字符
{
bchar=c;
flag=1;
}
char GetC( )//取下一個字符
{
if(flag==1)
{
flag=0;
return bchar;
}
char t;
t=getc(fp);
if(t=='\n'||t=='\t'||t=='\r') t=' ';
return t;
}
int SearchKey( )
{
char Token[7][10]={"main","if","else","int","return","void","while"};
for(int i=0;i<7;i++);
{
if(strcmp(Token[i],str)==0)
return i+1;
}
return 0;
}
void GetNextWord( )
{
cch=GetC();
while(cch==' ')
{
cch=GetC( );
}
int k=0;
str[0]=cch;
if((cch>='a'&&cch<='z')||(cch>='A'&&cch<='Z'))
{
str[++k]=cch;
cch=GetC( );
while((cch>='a'&&cch<='z')||(cch>='A'&&cch<='Z')||
(cch>='0'&&cch<='9'))
{
str[k++]=cch;
cch=GetC( );
}
str[k]='\0';
Pushback(cch);
int sk=SearchKey();
if(sk==0)
cout<<"28"<<" "<<str;
else
cout<<sk<<" "<<str;
}
else if(cch<='9'&&cch>='0')
{
//start
while(cch>='0'&&cch<='9')
{
str[k++]=cch;
cch=GetC( );
}
str[k]='\0';
Pushback(cch);
cout<<"29"<<" "<<str;
//end
}
else
{
switch(cch)
{
case '+':cout<<"9"<<" "<<"+";break;
case '-':cout<<"10"<<" "<<"-";break;
case '*':cout<<"11"<<" "<<"*";break;
case '/':cout<<"12"<<" "<<"/";break;
case '<':{cch=GetC( );
if(cch=='=') cout<<"14"<<" "<<"<=";
else {
Pushback(cch);
cout<<"13"<<" "<<"<";
}
};break;
case '>':{cch=GetC( );
if(cch=='=') cout<<"16"<<" "<<">=";
else {
Pushback(cch);
cout<<"15"<<" "<<">";
}
};break;
case '!':{cch=GetC( );
if(cch=='=') cout<<"18"<<" "<<"!=";
else {
Pushback(cch);
}
};break;
case '=':{cch=GetC( );
if(cch=='=') cout<<"17"<<" "<<"==";
else {
Pushback(cch);
cout<<"8"<<" "<<"=";
}
};break;
case '(':cout<<"26"<<" "<<"(";break;
case ')':cout<<"27"<<" "<<")";break;
case '[':cout<<"24"<<" "<<"[";break;
case ']':cout<<"25"<<" "<<"]";break;
case '{':cout<<"22"<<" "<<"{";break;
case '}':cout<<"23"<<" "<<"}";break;
case ':':cout<<"20"<<" "<<":";break;
case ',':cout<<"21"<<" "<<",";break;
case ';':cout<<"19"<<" "<<";";break;
}//switch
}//else
}
void main()
{if((fp=fopen("11.txt","r"))==0)
cerr<<"Can not open!";
else
{
while(cch!='#')
{
GetNextWord( );
cout<<endl;
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -