java編譯詞法分析器是一款非常實用的java編程輔助工具,主要功能為可幫助編程人員來進行JAVA的語言分析,可有效的節(jié)省時間提高編程效率,歡迎需要的朋友下載使用。
java編譯詞法分析器
詞法分析器步驟:
主函數(shù)
enum Token_Type {
keyword =1, //關(guān)鍵字
Identifier, //標識符
operatorr, //運算符
operatorrd, //單運算符
constant, //常量
escape, //轉(zhuǎn)義符
separator, //界限符
notype, //沒有類型
zhushi //注釋類型
};
對其單詞的類型定義成枚舉。
typedef struct Token {
Token_Type type; //其類型
char *lexeme ; //字符串
int value; //屬性值
}Token;
//返回單詞的結(jié)構(gòu)。
void InitScanner(char *ch){
fp1 = fopen(ch,"r+");
LineNo = 1;
}//初始化分析器。
void CloseScanner(){
fclose(fp1);
}//關(guān)閉分析器
void EmptyTokenString(){
memset(TokenBuffer,0,100);
}//清空緩沖區(qū)
static void AddCharTokenString(char Char)
{
int TokenLenth=strlen(TokenBuffer);
if(TokenLenth+1==sizeof(TokenBuffer)) return;
TokenBuffer[TokenLenth]=Char;
TokenBuffer[TokenLenth+1]='\0';
} //將一個字符添加到緩沖區(qū)
static char GetChar(){
char Char;
Char = fgetc(fp1);
return Char;
}//從文件中讀取一個字符
static void BackChar(char Char) {
if(Char!=EOF){
ungetc(Char,fp1);
}
}//將其字符后退一個。
static Token JudgeKeyToken(char *IDstring);//這個函數(shù)實現(xiàn)對關(guān)鍵字進行判斷
- PC官方版
- 安卓官方手機版
- IOS官方手機版