C语言核心技术(中文版).pdf
时间:08-13 15:46
查看:5473次
下载:162次
简介:
这本书是 “C编程语言”和“C语言链接库”的完整参考手册。这本书的目的是提供一本方便、可靠的手册,辅助日常的编程工作。本书描述C语言的所有元素,并介绍它们的用法。
本书讨论范围主要针对1999年发布的C语言国际标准“ISO/IEC 9899:1999”,并包含技术修正“2001年的TC1”和“2004年的TC2”。此标准被称为C99,是“ISO/IEC 9899:1990标准”和“1995基准增补1(ISO/IEC 9899/AMD1:1995)”的扩充。1990 ISO/IEC标准对应于ANSI标准X3.159,是1989年底核准的标准,常常被称为ANSI C或C89。
并非所有的编译器和标准链接库运行版本都完全支持1999 C标准的众多新特性。对于1999的扩充部分(比如早期版本没有的函数),本书在介绍时会特别标上“C99”标记。
本书并非C语言程序设计的入门书。虽然本书涵盖C语言基础,但是本书的编排和组织方式并不适合初学者。如果你是C语言的初学者,我们假设你至少读过任何一本C语言的入门书,或者至少熟悉相关的语言(例如Java或C++),这样才适合阅读本书。
本书的组织方式
本书分成三部分。第一部分使用相当严谨的术语表介绍C语言;第二部分描述标准链接库;第三部分介绍GNU软件包中常用的编译和测试工具。
第一部分
第一部分介绍C语言的基础知识,包括第1章到第14章。在第1章之后,讲解C语言的一般概念和元素,每章都有一个主题,例如数据类型、语句和指针。主题出现的次序是依据基本概念的学习次序来安排的,学习后面的主题需要前面的主题作为基础。比方说,先介绍数据类型,然后介绍表达式和运算符,接着介绍语句。有时候需要参考后面的章节,以了解一些相关的细节。例如,在第5章提前进行关于指针和数组的讨论是有必要的(第5章包含表达式和运算符),不过关于指针和数组的详细介绍在第8章和第9章。
第1章,语言基础
描述C语言的特性,以及如何编写和编译C程序。本章介绍一些基本概念,比如翻译单元、字符集、标识符。
第2章,数据类型
全面介绍C语言数据类型,并讨论基本数据类型、void类型和枚举类型。
第3章,字面值
描述数字常量、字符常量、字符串字面值(包括转义符)。
第4章,类型转换
描述显式和隐式的类型转换,包括整数提升和通常的算术转换。
第5章,表达式和运算符
讨论表达式的计算、所有的运算符,以及和运算符兼容的操作数。
第6章,语句
讨论C语言的语句,比如语句块、循环、跳转。
第7章,函数
描述函数定义和函数调用,包括递归函数和inline函数。
第8章,数组
描述定长数组和变长数组,包含字符串、数组初始化、多维数组等。
第9章,指针
描述对象指针和函数指针的定义和使用方法。
第10章,结构、联合、位字段
描述在“用户自定义数据类型”的数据组织方式。
第11章,声明
讲解声明的一般语法、标识符链接、对象生存周期。
第12章,动态内存管理
讨论标准链接库的动态内存管理函数,实现一个二叉树以演示这些函数的使用方法。
第13章,输入和输出
描述输入和输出的概念,以及标准I/O链接库的使用方式。
第14章,预处理指令
描述宏的定义和使用方法、条件编译,以及所有其他的预处理指令和操作。
第二部分
第二部分包含第15章到第17章,内容是C语言的标准链接库。全面介绍标准头文件,以及函数的使用细节。
第15章,标准头文件
描述标准头文件和用途,以及所有标准链接库的宏和类型定义。
第16章,函数概述
根据应用程序方式,概括性介绍标准链接库的函数,比如数学函数、时间和日期函数等。
第17章,标准链接库函数
按照字母排列顺序详细描述每个标准链接库函数,并使用范例演示每个函数的用法。
第三部分
本书第三部分介绍C语言程序员使用的基本工具:编译器、make工具程序和调试器。这里所描述的工具都属于GNU软件包。
第18章,GCC编译器
讨论广泛使用的GCC编译器给C程序员提供哪些能力。
第19章,使用make创建C程序
讲解如何使用make程序自动编译大型程序。
第20章,使用GDB调试C程序
介绍如何使用GNU调试器执行程序,以及如何分析程序的执行行为以找出逻辑错误。