西西软件园多重安全检测下载网站、值得信赖的软件下载站!
西西首页 电脑软件 安卓软件 电脑游戏 安卓游戏 排行榜 专题合集

java词法分析器

绿色版
  • java词法分析器绿色版
  • 软件大小:26KB
  • 更新时间:2014-11-27 17:12
  • 软件语言:中文
  • 软件厂商:
  • 软件类别:国产软件 / 免费软件 / 编程工具
  • 软件等级:4级
  • 应用平台:WinAll, Win7
  • 官方网站:http://www.cr173.com
  • 应用备案:
好评:50%
坏评:50%

软件介绍

java词法分析器是由C语言编译而成,网搜了一下,发现描述java词法分析的还是很少,所以把自己写好的发这边来,让大家参考下。大家可以在我的基础上增加一些自己的代码,使其更加完善。需要注意的是,这些代码中有一些功能还未完善,大家可以自己研究研究。

词法分析器步骤

先写其正则式,然后NFA,然后DFA,然后对其进行优化,最后准备工作做好了,就可以开始写代码了。

主函数

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);//这个函数实现对关键字进行判断

软件标签: 词法分析器

软件截图

java词法分析器 绿色版

其他版本下载

发表评论

昵称:
表情: 高兴 可 汗 我不要 害羞 好 下下下 送花 屎 亲亲
TOP
软件下载