- 博客(14)
- 收藏
- 关注
原创 const也不能保证
代码:#include #include void test(const char *paszStr){ char *pSearch = (char *)strrchr(paszStr, '/'); if(NULL != pSearch)
2011-07-14 17:23:37 360
原创 lemon之Hello World(续4)
现在,咱再加上对括号的支持。 在lemon的语法文件里加上括号的语法规则,在lex的词法规则里加上左右括号的定义。example.yexpr(A) ::= LP expr(B) RP. { /* () */ A.value = B.value; A.n = B.n + 1; } lexer.l
2011-06-22 16:40:00 719
原创 lemon之Hello World(续3)
之前几篇短文的主函数都是写死了代码,没有用户交互过程。现在,咱们利用flex和lemon结合,制作一个简单的计算器。之所以说简单,是因为只含有+-*/四个运算,并且还不支持括号。 相关文件如下:1、数据结构exampleDef.h#ifndef __EXAMPLE_DEF_H__ #define __EXAMPLE_DEF_H__ //le
2011-06-22 14:33:00 908
原创 lemon之Hello World(续2)
认识一下lemon的析构。lemon有两个指示符用户析构,分别是%destructor和%token_destructor。%destructor 用于非终结符的析构%token_destructor 用于终结符的析构
2011-06-22 10:55:00 483
原创 lemon之Hello World(续1)
再将进入例子之前,咱们先来认识一些lemon的指示符。 %token_type 该指示符用来指示终结符的数据结构类型,所有的终结符都必须具有相同的类型,也就是Parse()(见lemon简介)的第三个参数。 %type 该指示符用来指示非终结符的数据结构类型。非终结符的数据结构类型不必都相同。 在《lemon之Hello World》中的语
2011-06-22 09:59:00 636
转载 Facebook网站所使用的开源软件一览表
原文出处: http://www.oschina.net/news/17509/opensource-used-in-facebookFacebook是全球首屈一指的社交网络平台,该网站采用了很多开源软件,Facebook采用的编程语言包括:Java,Ruby,PHP,Python,Objective-C.下面是Facebook正在使用或者贡献的开源软件详细列表和介绍:Apache C
2011-06-11 18:13:00 479
原创 lemon之Hello World
参考文献: http://souptonuts.sourceforge.net/readme_lemon_tutorial.html像所有的入门教程一样,咱也写一个Hello World程序。准备工作:先编译生成lemon,并把lempar.c源代码放在当前工作目录下。第一个例子:1、编写语法文件:example.y%token_type {int} %left PLUS
2011-06-11 11:22:00 760
原创 lemon简介
lemon需要两个c文件:lemon.c和lempar.c。lemon.c可以编译生成可执行程序lemon,而lempar.c是lemon根据语法规则文件生成代码的模板。 终结符和非终结符 终结符(token):以字母、数字、下划线组成,并且以大写字母开头的字符串。一般全写为大写。 非终结符:以字母、数字、下划线组成,并且以小写字母开头的字符串。一般全写为小写。
2011-06-11 10:38:00 1248
翻译 用GDB调试--4 在GDB中运行程序
4 在GDB中运行程序 在gdb下运行程序时,首先在编译程序的时候要产生调试信息,然后在某个环境中带参数启动gdb。如果是调试本地程序,还可以重定向程序的输入输出,调试已经运行的进程或者杀死一个子进程。编译启动参数环境工作目录输入/输出挂接 杀死进程Inferiors和程序线程Forks检查点/重启
2011-02-13 17:24:00 3830
翻译 用GDB调试--目录
摘要: gdb的摘要会话示例:一个gdb会话的示例调用:启动和退出GDB命令:GDB的命令运行:在GDB中运行程序停止:停止和继续反向执行:向后执行程序进程录制和重放:记录底层的执行和重新执行堆栈:查看堆栈源代码:查看源代码数据:查看数据优化代码:调试优化过的代码宏:预处理宏追踪:非侵入的调试远程目标覆盖:使用覆盖技术调试程序语言:使用GDB调试不同的语言符号:查看符号表变更:更改执行GDB文件:GDB文件目标:阐述调试目标远程调试:调试远程目标配置:详细的配置
2011-02-13 12:42:00 1908
翻译 GDB内部手册
<br />原文地址:http://sourceware.org/gdb/current/onlinedocs/gdbint/<br />
2011-02-12 13:26:00 568
翻译 用GDB调试(Debugging with gdb)
原文地址:http://sourceware.org/gdb/current/onlinedocs/gdb/同时,GNU出版社出版了该书,书名是《Debugging_with_GDB_-_the_GNU_Source-Level_Debugger》。考虑到自己做事三分钟热度,因此希望在两年内翻译完改手册。实际上,网上已经有众多的中文译本。现在自己也翻译,只是为了强迫自己认真看完该手册。
2011-02-12 13:23:00 1719
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人