盘点 Linux 操作系统下 C 语言编程注意事项 Linux 操作系统下 C 语言编程是软件开发的基础,掌握良好的编程习惯和技巧对于开发高质量的软件至关重要。本文将盘点 Linux 操作系统下 C 语言编程的注意事项,包括工具的使用、Linux/unix 系统调用与标准 C 库、库的学习和网络的学习等方面。 一、工具的使用 在 Linux 操作系统下,掌握良好的工具使用技巧对于提高编程效率和质量至关重要。下面是需要掌握的工具: 1. Vim/Emacs: Vim 和 Emacs 是 Linux 下最常用的源码编辑器,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。新手的话推荐使用 Vim,这也是我目前使用的文本编辑器。 2. Makefile:掌握 Makefile 文件的编写规则,并结合使用工具 aclocal、autoconf 和 automake 生成 Makefile 文件。 3. GCC 和 GDB:掌握 GCC 和 GDB 的基本用法。掌握 GCC 的用法对于构建一个软件包很有益处,当软件包包含的文件比较多的时候,你还能用 GCC 把它手动编译出来,你就会对软件包中各个文件间的依赖关系有一个清晰的了解。 二、Linux/Unix 系统调用与标准 C 库 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 库的时候可以顺便学习一下基本的数据结构(包括链表、树、队列和哈希表)。 2. Libxml 库:Libxml 库是 Linux 平台下解析 XML 文件的一个基础库,现在很多实用软件都用 XML 格式的配置文件,所以也有必要学习一下。 3. Readline 库:Readline 库是 bash shell 用的库,如果要开发命令行程序,那么使用 Readline 库可以减少很多工作量,比如 bash 里面的命令行自动补全,在 Readline 里就已经有实现,当然你也可以用自己的实现替代库的行为。 4. Curses 库:Curses 库以前是 vi 程序的一部分,后来从 vi 里提取出来成为一个独立的库。Curses 库对于编写终端相关的程序特别有用,比如要在终端某一行某一列定位输出,改变终端字体的颜色和终端模式。Linux 下的 Curses 库用的是 GNU 实现的 ncurses(newcurses 的意思)。 5. GTK+ 和 KDE 库:这两个库是开发 GUI 应用程序的基础库,现在 Linux 下的大部份 GUI 程序都是基于这两个库开发的,对于它们的学习也是很有必要的。 四、网络的学习 网络这个东西太宽了,推荐学习资料 Steven 先生的 UNIX 网络编程(简称 UNP)和 TCP/IP 协议详解,更进一步的话可以学习使用 libnet 编写网络程序。 掌握良好的 C 语言编程习惯和技巧对于 Linux 操作系统下软件开发至关重要。同时,掌握 Linux/Unix 系统调用与标准 C 库、库的学习和网络的学习也非常重要。
- 粉丝: 6
- 资源: 967
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助