介绍 |
java编译词法分析器是一款非常实用的java编程辅助工具,主要功能为可帮助编程人员来进行JAVA的语言分析,可有效的节省时间提高编程效率,欢迎需要的朋友下载使用。
词法分析器步骤: 主函数 enum Token_Type { keyword =1, //关键字 Identifier, //标识符 operatorr, //运算符 operatorrd, //单运算符 constant, //常量 escape, //转义符 separator, //界限符 notype, //没有类型 zhushi //注释类型 }; 对其单词的类型定义成枚举。 typedef struct Token { Token_Type type; //其类型 char *lexeme ; //字符串 int value; //属性值 }Token; //返回单词的结构。 void InitScanner(char *ch){ fp1 = fopen(ch,"r+"); LineNo = 1; }//初始化分析器。 void CloseScanner(){ fclose(fp1); }//关闭分析器 void EmptyTokenString(){ memset(TokenBuffer,0,100); }//清空缓冲区 static void AddCharTokenString(char Char) { int TokenLenth=strlen(TokenBuffer); if(TokenLenth+1==sizeof(TokenBuffer)) return; TokenBuffer[TokenLenth]=Char; TokenBuffer[TokenLenth+1]='\0'; } //将一个字符添加到缓冲区 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);//这个函数实现对关键字进行判断
|