本书是由C语言研制者编写的一部介绍标准C语言及其程序设计方法的权威性经典著作。全书共分8章及4个附录,全面、系统地讲述了C语言的各个方面及其程序设计的基本方法,内容深入浅出,配合例证,通俗易懂。适合于大专院校师生以及从事计算机软硬件研究、开发与应用 的人员使用。 我们已尽力保持本书第1版的简洁性。C不是一个大型语言,也不需要一本很厚的书来描述。我们改进了对其典型特征的阐述,如指针,它是C程序设计的中心。我们对以前的例子进行了提炼,并在几章中增加了新的例子。例如,我们用程序来处理复杂的声明,这些程序将声明转换为单词或反之。像以前一样,所有例子的文本都以机器可读的形式直接经过测试。 就像我们在第1版序中所说的,“当对C的经验增加时它显得很好用”。经过十几年的实践,我们仍然这样认为。我们希望这本书能帮助你学习并使用好C语言。
目录
- 中文版序
- 译者序
- 序
- 第1版序
- 前言
- 第1章 基本概念
- 1.1 入门
- 1.2 变量与算术表达式
- 1.3 for语句
- 1.4 符号常量
- 1.5 字符输入输出
- 1.6 数组
- 1.7 函数
- 1.8 变元-按值调用
- 1.9 字符数组
- 1.10 外部变量与作用域
- 第2章 类型、运算符与表达式
- 2.1 变量名
- 2.2 数据类型与大小
- 2.3 常量
- 2.4 说明
- 2.5 算术运算符
- 2.6 关系运算符与逻辑运算符
- 2.7 类型转换
- 2.8 加一与减一运算符
- 2.9 按位运算符
- 2.10 赋值运算符与赋值表达式
- 2.11 条件表达式
- 2.12 运算符优先级与表达式求值次序
- 第3章 控制流
- 3.1 语句与分程序
- 3.2 if-else语句
- 3.3 else-if语句
- 3.4 switch语句
- 3.5 while与for循环语句
- 3.6 do-while循环语句
- 3.7 break语句与continue语句
- 3.8 goto语句与标号
- 第4章 函数与程序结构
- 4.1 函数的基本知识
- 4.2 返回非整数值的函数
- 4.3 外部变量
- 4.4 作用域规则
- 4.5 头文件
- 4.6 静态变量
- 4.7 寄存器变量
- 4.8 分程序结构
- 4.9 初始化
- 4.10 递归
- 4.11 C预处理程序
- 4.11.1 文件包含
- 4.11.2 宏替换
- 4.11.3 条件包含
- 第5章 指针与数组
- 5.1 指针与地址
- 5.2 指针与函数变元
- 5.3 指针与数组
- 5.4 地址算术运算
- 5.5 字符指针与函数
- 5.6 指针数组与指向指针的指针
- 5.7 多维数组
- 5.8 指针数组的初始化
- 5.9 指针与多维数组
- 5.10 命令行变元
- 5.11 指向函数的指针
- 5.12 复杂说明
- 第6章 结构
- 6.1 结构的基本知识
- 6.2 结构与函数
- 6.3 结构数组
- 6.4 结构指针
- 6.5 自引用结构
- 6.6 查找表
- 6.7 类型定义
- 6.8 联合
- 6.9 位字段
- 第7章 输入与输出
- 7.1 标准输入输出
- 7.2 格式化输出-printf函数
- 7.3 变长变元表
- 7.4 格式化输入-scanf函数
- 7.5 文件访问
- 7.6 错误处理-stderr和exit函数
- 7.7 行输入输出
- 7.8 其他函数
- 第8章 UNIX系统界面
- 8.1 文件描述符
- 8.2 低级I/O-read和write系统调用
- 8.3 open、creat、close和unlink系统调用
- 8.4 随机访问-lseek系统调用
- 8.5 实例-fopen和getc函数的一种实现方法
- 8.6 实例-目录显示
- 8.7 实例-存储分配程序
- 附录A 参考手册
- A.1 引言
- A.2 词法规则
- A.3 语法符号
- A.4 标识符的含义
- A.5 对象和左值
- A.6 转换
- A.7 表达式
- A.8 说明
- A.9 语句
- A.10 外部说明
- A.11 作用域与连接
- A.12 预处理
- A.13 语法
- 附录B 标准库
- B.1 输入与输出: <stdio.h>
- B.2 字符类测试: <ctype.h>
- B.3 字符串函数: <string.h>
- B.4 数学函数: <math.h>
- B.5 实用函数: <stdlib.h>
- B.6 诊断: <assert.h>
- B.7 变长变元表:<stdarg.h>
- B.8 非局部跳转: <setjmp.h>
- B.9 信号处理: <signal.h>
- B.10 日期与时间函数:<time.h>
- B.11 由实现定义的限制:<limits.h>和<float.h>
- 附录C 变更小结
- 附录D 索引