和我一起学习Linux编程(三)------------------工具篇

来源:互联网 发布:安居客经纪人端口 编辑:程序博客网 时间:2024/03/29 23:46

 这次我要说的是剩下的两个工具。
 emacs这是linux下的重量级的编辑器,其实它不只是一个编辑器,你可以把它当成一个集成式开发环境来看待,这在文章的最后会提到。emacs的设计理念就是一切以编辑为中心,它提供了对shell和其它一些工具的支持,但都是在其编辑环境下来完成的。对于一个字符型的编辑环境来说首先就是很多快捷键,这与windows的习惯有很大不同,但要说明的一点是,在emacs中所有的操作都可以通过快捷键来完成,而且当你完全让它成为你生活的一部分的时候,它的效率是很高,当然,在这里我也要感谢对gnu世界作出杰也贡献的人们,呵呵,不多说了。
 我练习这些快捷键花了两天时间,然后我扔掉windows下的记事本,装了一个windows版本的记事本。
 在emacs里有两种快捷键,一种是Ctrl的简称C,表示的是简写的快捷键,一种是ESC的,在xemacs(emacs的一种变体)中可以用alt来代替,表示完全版本的快捷键形式,常用的快捷键有以下几个:
 C-x C-f 打开文件
 C-x C-s 保存文件
 C-x s   保存所有打开的缓冲区
 
 C-x o   到另一个窗口中
 C-x 1   将当前窗口最大化
 C-x 2   将当前窗口分割为纵向二个窗口
 C-x 3   将当前窜口分割为横向二个窗口

 ESC-x c-set-style 可以设定c模式下的习惯比如说缩进方式啊什么的
 简单吧,呵呵,后面还会提到其它的,还是那句话,你对工具了解的越多,你的工作效率也就会越高。外国人把emacs当成一种文件来看待,可见它的影响,国内也一个本关于它的书好象叫什么什么(第二版),名字忘了,不错,我就是看那个学的。最后再说一点,还有很多人在用另外一种编辑器vi,它也是一个功能很强大的工具,不过我没使用过,所以没法比较。
 最后一个就是gdb,字符模式下的程序调试工具。为什么要用字符模式下的而不用图形模式下的呢,还是那句话,不是所有的linux都能支持图形模式,但是所有的linux都支持这个。虽然也有一些图形模式下的调试工具,但是当你看完本文最后的说明时,也许你会知道,什么才是你最需要的。记得有个人说过一句话,如果你没快乐过,你就不知道怎么找乐,呵呵。好了,说一个gdb吧。首先打开gdb,然后用open命令打开要调试的可执行程序,前提是你的程序在编译时使用了-g参数来加入调试信息。然后用run来运行程序;用kill来终止程序;用watch来设查看;用break设断点,这里要说明一下,你可以用 文件:行号 的形式,也可以用 文件:函数 的形式,对于c++来说,你可以用 类名:成员函数 的形式;用continue继续运行;用step单步进入;用next单步执行而不进入到函数的内部。还有很多其它的命令,这是最常用的,好了就这些。

 看到这里你也许会说,这和windows下的开发环境看上去差了很多,我们需要在不同的应用程序之间来回切换吗?不,不是这样的,这四个工具在linux下面组合在一起组成了一个功能强大的集成式开发环境,可以让你在一个程序里执行所有的操作,对了,它们的粘合剂就是emacs,使用ESC-x compile,对当前工作目录下的文件进行编译,程序会自动打开窗口来显示编译结果,如果有错误的话用C-x `(~不用shift那个字)就可以指定错误的位置;使用ESC-x gdb就可以对程序进行调试,要说的是,当你用它进行调试时,打上断点中断时,emacs就是自动查找文件,并指向当前行,就和vc作的一样,呵呵,如果你要执行shell,你可以用ESC-x shell来作这个,当然它也可以打开别的shell,如果你要版本工具emacs来可以集成一个叫rvs的工具,没用过,不好意思,我都是用cvs的。有了这样一个强大的工具,你还需要什么集成式的开发环境吗,我想还是需要的,比如cbx,呵呵,那为什么我们还要会这些呢,因为不是所有的linux都有cbx,呵呵,我不想再说第三遍了。今天就到这吧,呵呵,下面还讲什么啊,有需要的告诉我一下。
 

原创粉丝点击