关于Linux操作系统下C语言编程注意事项

来源:asp之家 时间:2009-09-20 20:24:00 

一、工具的使用

1、学会使用vim/emacs,vim/emacs是linux下最常用的源码编辑具,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。新手的话推荐使用vim,这也是我目前使用的文本编辑器。

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

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

4、掌握svn/cvs的基本用法。这是linux,也是开源社区最常用的版本管理系统。可以去试着参加sourceforge上的一些开源项目。

二、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表)。

2、libxml库

libxml是linux平台下解析XML文件的一个基础库,现在很多实用软件都用XML格式的配置文件,所以也有必要学习一下。

3、readline库

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

4、curses库

curses 库以前是vi程序的一部分,后来从vi里提取出来成为一个独立的库。curses库对于编写终端相关的程序特别有用,比如要在终端某一行某一列定位输出, 改变终端字体的颜色和终端模式。linux下的curses库用的是GNU实现的ncurses(new curses的意思)。

5、gtk 和KDE库

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

四、网络的学习

网络这个东西太宽了,推荐学习资料steven先生的UNIX网络编程(简称UNP)和TCP/IP协议详解,更进一步的话可以学习使用libnet编写网络程序。

标签:linux,操作系统,编程
0
投稿

猜你喜欢

  • phpwind 8.7版体验站上线 新功能抢先预览

    2011-07-30 08:02:13
  • Godaddy的VDS使用经验(二) Godaddy

    2010-04-07 13:11:00
  • 用Discuz!7.0打造兴趣类社区 北京飞度车友会聚人气

    2009-08-12 11:46:00
  • 30天网站推广实战经验分享(QQ篇)

    2009-10-30 00:41:00
  • 两招填补Windows 2003 DNS服务器漏洞

    2010-02-20 19:25:00
  • 如何选择一款适合你的虚拟主机

    2007-12-22 16:53:00
  • 如何在Discuz 7.1中给通过WAP发布的帖子加标记

    2009-12-09 16:18:00
  • 20条让Google搜索更有效的技巧

    2009-03-09 10:43:00
  • 隐藏WordPress某一分类文章的三个插件

    2011-08-31 12:55:06
  • 行业类门户网站推广技巧

    2009-08-22 08:41:00
  • Win Server 2003个人网络服务器安全攻略

    2008-10-20 19:58:00
  • PJBlog3评论整合Gravatar全球通用头像API教程

    2011-04-22 13:31:00
  • PHPCMS、织梦及帝国CMS对比(十二)之PHPCMS低级BUG问题分析

    2011-08-31 20:04:27
  • 提高WordPress自带搜索功能体验

    2010-03-26 11:08:00
  • SEO优化中好域名的优势

    2007-12-26 12:37:00
  • GoDaddy空间如何在子域名及别名域名上设置404页面

    2010-04-12 12:33:00
  • 借牌难成大器 谎言被揭后迅雷无言以对

    2009-10-14 11:04:00
  • 服务器安全需要注意的四个事项

    2010-08-15 18:38:00
  • 如何在互联网社区中应用AdSense

    2009-01-23 13:20:00
  • IIS报Service Unavailable错的解决方案

    2008-04-22 13:52:00
  • asp之家 网站运营 m.aspxhome.com