注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

中吴南顾惟一笑

成功法则就是那19个字

 
 
 

日志

 
 

bison/flex的几个tips  

2010-07-03 13:46:05|  分类: R&D |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
bison -g    Bison提供了自动机的两种表示方法,文本的或者图形的(作为一个VCG文件).

bison -v  可以查看shift/reduce|reduce/reduce conflict
                    还有一个附加功能,输出了BNF grammer (无action代码)
.output格式
    1).冲突conflict
    2).grammer,所有rules
    3).终结符
    4).非终结符,及其出现的rules(包括在冒号的left/right中出现的)
    5).state:迁移,移进,规约

bison -t
#define YYDEBUG 1  => trace bison
    1).每次调用yylex时,读取记号的种类.
    2).每次移进记号的时候,分析器栈的深度和完整的内容.
    3).每次归约一个规则时,这个规则是哪个规则,和在归约之后状态栈的完整内容.

bison 使用%pure_parser后,生成代码的变化
    1).#define YYPURE 1 [0->1]
    2).#define YYLEX yylex (&yylval) [()->(&yylval)]
    3).yylval, yychar...变成局部变量

flex 
  -p performance report
  -v statistics

http://flex.sourceforge.net/manual/Reentrant.html
    yyscanner is a pointer to an opaque data structure encapsulating the current state of the scanner
www.w3.org/2005/03/23-lex-U
    Adding utf-8 Encoding to Lex(Implementations:Yacker)
  评论这张
 
阅读(601)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017