
编程工具
文章平均质量分 71
haoel
这个作者很懒,什么都没留下…
展开
-
用GDB调试程序(六)
七、设置显示选项 GDB中关于显示的选项比较多,这里我只例举大多数常用的选项。 set print address set print address on 打开地址输出,当程序显示函数信息时,GDB会显出函数的参数地址。系统默认为打开的,如: (gdb) f #0 set_quotes (lq=0x3原创 2003-07-12 22:24:00 · 44252 阅读 · 2 评论 -
ldd 的一个安全问题
源文:http://coolshell.cn/?p=1626 (酷壳) 我们知道“ldd”这个命令主要是被程序员或是管理员用来查看可执行文件所依赖的动态链接库的。是的,这就是这个命令的用处。可是,这个命令比你想像的要危险得多,也许很多黑客通过ldd的安全问题来攻击你的服务器。其实,ldd的安全问题存在很长的时间了,但居然没有被官方文档所记录来下,这听上去更加难以理解了。怎么?是不是原创 2009-11-10 18:01:00 · 7978 阅读 · 3 评论 -
使用Flex Bison 和LLVM编写自己的编译器
使用Flex Bison 和LLVM编写自己的编译器译者:赵锟原文:http://coolshell.cn/?p=1547 (酷壳) 本文由赵锟翻译,酷壳发布,转载请注明译者和出处,请勿用于商业用途原文出处:http://gnuu.org/2009/09/18/writing-your-own-toy-compiler 1、介绍我总翻译 2009-11-09 13:12:00 · 22237 阅读 · 2 评论 -
Google Maps API用法教程
原文链接:http://coolshell.cn/?p=1561 (酷壳)在过去的一年中,在线地图的发展是相当巨大,我们可以看到在线地图的极有价值的信息和其能力。这其中,最有名气的自然是Google Maps。. Google Maps由一个相当强大的开发引擎并也有一个很大的社区提示支持。Google 允许各种web masters 通过Google Maps API来增加或自定义他们翻译 2009-10-28 11:09:00 · 8305 阅读 · 0 评论 -
8个实用而有趣Bash命令提示行
8个实用而有趣Bash命令提示行赵锟原文:http://coolshell.cn/?p=1399 (酷壳) 很多人都对过命令行提示的重要性不屑一顾,甚至是一点都不关心。但是我却一点都不这么认为,一个好的命令行提示可以改变你使用命令的方式。为此,我在internet上找到一些非常实用,优秀,并有趣的bash的命令行提示。下面我将我最喜欢使用的一些命令行提示罗列如下。注意 -转载 2009-10-13 15:45:00 · 11635 阅读 · 4 评论 -
简单实用的Code Review工具
另一文章请参看:《Code Review中的几个提示》CSDN, 酷壳 Code Review中文应该译作“代码审查”或是“代码评审”,这是一个流程,当开发人员写好代码后,需要让别人来review一下他的代码,这是一种有效发现BUG的方法。由此,我们可以审查代码的风格、逻辑、思路……,找出问题,以及改进代码。因为这是代码刚刚出炉的时候,所以,这也是代码重构,代码调整,代码修改的最佳时候。所原创 2009-08-21 11:48:00 · 101019 阅读 · 10 评论 -
用GDB 调试Java程序
用GDB 调试Java程序 陈皓http://blog.csdn.net/haoel 背景 想要使用GDB调试程序,就需要用GNU的编译器编译程序。如:用GCC编译的C/C++的程序,才能用GDB调试。对于Java程序也是一样的,如果想要用GDB调试,那么就需要用GNU的Java编译器——GCJ来编译Java程序。 目前,很多Linux都不会预装Sun的JVM原创 2008-04-13 21:39:00 · 34546 阅读 · 11 评论 -
C/C++内存问题检查利器—Purify (五)
十、 设置WatchPoint你可以在你的程序中,对你所想监控的程序设置一些WatchPoint,以方便于你对程序进行调试,或更容易找出问题的原因。就像我前面说,Purify可以找到你的内存泄露,但其不能找到内存泄露的原因,你可以通过设置WatchPoint来跟踪一块内存,以找到在程序执行过程中该内存的访问情况。 Purify的WatchPoint可以产生下例消原创 2003-12-16 13:01:00 · 10696 阅读 · 1 评论 -
用GDB调试程序(三)
四、维护停止点上面说了如何设置程序的停止点,GDB中的停止点也就是上述的三类。在GDB中,如果你觉得已定义好的停止点没有用了,你可以使用delete、clear、disable、enable这几个命令来进行维护。 clear 清除所有的已定义的停止点。 clear clear 清除所有设置在函数上的停止点。 clear原创 2003-07-21 18:36:00 · 45183 阅读 · 10 评论 -
C/C++内存问题检查利器—Purify (四)
七、 Purify的退出码像UNIX下的软件,一般都会提供和别的应用程序的接口,像上面的生成文本文件,也是给别的应用程序提供接口的一种方式。这里,我们所要讲述的是Purify的退出码,我们知道程序都有退出码,以提供给别的程序或操作系统自己运行的信息。被Purify编译过的程序,你可以通过指定-exit-status参数来告诉Purify是否用Purify的退出码,原创 2003-12-16 12:58:00 · 8772 阅读 · 0 评论 -
C/C++内存问题检查利器—Purify (二)
三、 示例假设我们现在有这样一段程序:hello.c #include #include static char *helloWorld = "Hello, World";原创 2003-12-11 11:37:00 · 15358 阅读 · 2 评论 -
用GDB调试程序(四)
查看栈信息—————当程序被停住了,你需要做的第一件事就是查看程序是在哪里停住的。当你的程序调用了一个函数,函数的地址,函数参数,函数内的局部变量都会被压入“栈”(Stack)中。你可以用GDB命令来查看当前的栈中的信息。下面是一些查看函数调用栈信息的GDB命令: backtrace bt 打印当前的函数调用栈的所有信息。如:原创 2003-07-09 08:30:00 · 54105 阅读 · 4 评论 -
用GDB调试程序(一)
用GDB调试程序GDB概述————GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所谓“寸有所长,尺有所短”就是这个道理。一般来说,GDB主要帮忙你完成下面四个方面的功能: 1、启动你的程序原创 2003-07-02 23:13:00 · 657369 阅读 · 83 评论 -
C/C++内存问题检查利器—Purify (三)
五、 文件描述符问题在上面的内存问题表中,对于大多数的内存问题来说,相信对于熟悉C/C++的程序员,并不陌生。有一些关于Watchpoint和文件描述符的内容,可能会让你看得比较模糊,对于Watchpoint,我会在后面讲述。这一节,我就一个示例说一说文件描述述问题是如何产生的,并由此介绍一下Purify的一些特性。 先查看下面这段程序:原创 2003-12-15 01:26:00 · 23117 阅读 · 2 评论 -
用GDB调试程序(七)
改变程序的执行——————— 一旦使用GDB挂上被调试程序,当程序运行起来后,你可以根据自己的调试思路来动态地在GDB中更改当前被调试程序的运行线路或是其变量的值,这个强大的功能能够让你更好的调试你的程序,比如,你可以在程序的一次运行中走遍程序的所有分支。 一、修改变量值 修改被调试程序运行时的变量值,在GDB中很容易实现,使用GDB的print命令即可完成。如:原创 2003-07-12 16:42:00 · 44599 阅读 · 20 评论 -
用GDB调试程序(五)
查看运行时数据——————— 在你调试程序时,当程序被停住时,你可以使用print命令(简写命令为p),或是同义命令inspect来查看当前程序的运行数据。print命令的格式是: print print / 是表达式,是你所调试的程序的语言的表达式(GDB可以调试多种编程语言),是输出的格式,比如,如果要把表达式按16进制的格式输出,那么原创 2003-07-09 08:30:00 · 68688 阅读 · 5 评论 -
用GDB调试程序(二)
GDB的命令概貌———————启动gdb后,就你被带入gdb的调试环境中,就可以使用gdb的命令开始调试程序了,gdb的命令可以使用help命令来查看,如下所示: /home/hchen> gdb GNU gdb 5.1.1 Copyright 2002 Free Software Foundation, Inc. GDB is free software, cov原创 2003-07-03 00:20:00 · 122594 阅读 · 15 评论 -
C/C++内存问题检查利器—Purify (一)
C/C++内存问题检查利器——Purify 陈皓一、 引言 我们都知道软件的测试(在以产品为主的软件公司中叫做QA—Quality Assessment)占了整个软件工程的30% -50%,但有这么一种说法,即使是最优秀测试专家设计出来的测试案例,也无法彻底地检测到内存上的问题。 使用C/C++开发的团队一定有被其内存问题折磨过的原创 2003-12-11 11:34:00 · 43007 阅读 · 10 评论 -
装完Ubuntu 9.10后要干的事
转自:http://coolshell.cn/?p=1644 (酷壳) Ubuntu 9.10刚刚release,就有人在网上发表了贴子告诉大家在装完这个操作系统后,还需要去安装的一些开源免费软件,相当丰富。不过,这个贴子的链接被GFW干掉了,所以,你需要使用Tor的支持,或是使用Google Reader才能查看源文(RSS链接)。而这个贴子非常长,所以我无法作全文翻译,不过这个贴子的翻译 2009-11-26 07:37:00 · 17125 阅读 · 32 评论