飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2806|回复: 1

c语言的脚步

[复制链接]
  • TA的每日心情
    慵懒
    2019-3-12 17:25
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2010-5-23 22:59:00 | 显示全部楼层 |阅读模式
    本帖最后由 whypro 于 2010-5-23 23:21 编辑

    前两天回到母校的BBS上转了一下,看到一些师弟们在问,学完学校的C语言教科书后,怎么进一步学习C语言开发。现在我就以我这几年的经验谈谈在linux下做C语言开发都要学些什么东西吧,希望对初学者能起到一些抛砖引玉的作用。

    一、工具的使用

    1、学会使用vim/emacs,vim/emacs是linux下最常用的源码编辑具,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。新手的话推荐使用vim,这也是我目前使用的文本编辑器。vim有一个中文在线手册http://vcd.gro.clinux.org

    2、学会makefile文件的编写规则,并结合使用工具aclocal、autoconf和automake生成makefile文件。

    3、掌握gcc和gdb的基本用法。掌握gcc的用法对于构建一个软件包很有益处,当软件包包含的文件比较多的时候,你还能用gcc把它手动编译出来,你就会对软件包中各个文件间的依赖关系有一个清晰的了解。

    4、掌握svn/cvs的基本用法。这是linux,也是开源社区最常用的版本管理系统。可以去试着参加sourceforge上的一些开源项目。svn有一个中文网站:http://www.subversion.org.cn对svn进行介绍。
    二、linux/unix系统调用与标准C库

    系统调用应用软件与操作系统的接口,其重要性自然不用说,一定要掌握。推荐学习资料为steven先生的UNIX环境高级编程(简称APUE)。
    三、库的学习

    无论是在哪个平台做软件开发,对于库的学习都很重要,linux下的开发库很多,我主要介绍一下我常常用到的一些库。

    1、glib库
    glib库是gtk+和gnome的基础库,并具是跨平台的,在linux、unix和windows下都可以用。glib库对于linux平台开发的影响就像MFC对windows平台开发的影响一样,很多开源项目都大量的使用了glib库,包括gimp、gnome、gaim、evolution和linux下的集群软件heartbeat。因为glib库自带有基本的数据结构实现,所以在学习glib库的时候可以顺便学习一下基本的数据结构(包括链表、树、队列和hash表)。glib库也有一个在线手册,网址是http://developer.gnome.org/doc/API/glib/index.html
    http://developer.gnome.org/doc/API/2.0/glib/index.html

    2、libxml库
    libxml是linux平台下解析XML文件的一个基础库,现在很多实用软件都用XML格式的配置文件,所以也有必要学习一下。libxml的网站是http://xmlsoft.org/index.html

    3、readline库
    readline库是bash shell用的库,如果要开发命令行程序,那么使用readline库可以减少很多工作量,比如bash里的命令行自动补全,在readline里就已经有实现,当然你也可以用自己的实现替代库的行为。readline库有很多网站介绍的,只要google一下readline就可以找到一堆了。

    4、curses库
    curses库以前是vi程序的一部分,后来从vi里提取出来成为一个独立的库。curses库对于编写终端相关的程序特别有用,比如要在终端某一行某一列定位输出,改变终端字体的颜色和终端模式。linux下的curses库用的是GNU实现的ncurses(new curses的意思)。推荐一个curses学习网站http://web.cs.mun.ca/~rod/ncurses/ncurses.html


    5、gtk+和KDE库

    这两个库是开发GUI应用程序的基础库,现在linux下的大部份GUI程序都是基于这两个库开发的,对于它们 的学习也是很有必要的。


    四、网络的学习

    网络这个东西太宽了,推荐学习资料steven先生的UNIX网络编程(简称UNP)和TCP/IP协议详解,更进一步的话可以学习使用libnet编写网络程序。
    PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2016-5-16 19:11
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    发表于 2016-5-16 20:45:01 | 显示全部楼层
    提示: 作者被禁止或删除 内容自动屏蔽
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表