前言 本文译自《Slackware linux Unleashed》(第三版) 一书的第27章: PRogramming in C. 关于本译文有任何的话请与我联系: mailto:con@nease.net.
linux的发行版中包含了很多软件开发工具. 它们中的很多是用于 C 和 C++应用程序开发的. 本文介绍了在 Linux 下能用于 C 应用程序开发和调试的工具. 本文的主旨是介绍如何在 Linux 下使用 C 编译器和其他 C 编程工具, 而非 C 语言编程的教程. 在本文中你将学到以下知识:
* 什么是 C * GNU C 编译器 * 用 gdb 来调试GCC应用程序
你也能看到随 linux 发行的其他有用的 C 编程工具. 这些工具包括源程序美化程序(pretty print programs), 附加的调试工具, 函数原型自动生成工具(automatic function prototypers).
注重: 源程序美化程序(pretty print programs)自动帮你格式化源代码产生始终如一的缩进格式. 什么是 C? C 是一种在 UNIX 操作系统的早期就被广泛使用的通用编程语言. 它最早是由贝尔实验室的 Dennis Ritchie 为了 UNIX 的辅助开发而写的, 开始时 UNIX 是用汇编语言和一种叫 B 的语言编写的. 从那时候起, C 就成为世界上使用最广泛计算机语言.
C 能在编程领域里得到如此广泛支持的原因有以下一些:
* 它是一种非常通用的语言. 几乎你所能想到的任何一种计算机上都有至少一种能用的 C 编译器. 并且它的语法和函数库在不同的平台上都是统一的, 这个特性对开发者来说很有吸引力. * 用 C 写的程序执行速度很快. * C 是所有版本的UNIX上的系统语言.
C 在过去的二十年中有了很大的发展. 在80年代末期美国国家标准协会(American National Standards Institute)发布了一个被称为 ANSI C 的 C 语言标准.这更加保证了将来在不同平台上的 C 的一致性. 在80年代还出现了一种 C 的面向对象的扩展称为 C++. C++ 将在另一篇文章 "C++ 编程"中描述.
linux 上可用的 C 编译器是 GNU C 编译器, 它建立在自由软件基金会的编程许可证的基础上, 因此可以自由发布. 你能在 Linux 的发行光盘上找到它.
GNU C 编译器 随 Slackware linux 发行的 GNU C 编译器(GCC)是一个全功能的 ANSI C 兼容编译器. 假如你熟悉其他操作系统或硬件平台上的一种 C 编译器, 你将能很快地把握 GCC. 本节将介绍如何使用 GCC 和一些 GCC 编译器最常用的选项.