计算机书籍控

C语言接口与实现 创建可重用软件的技术

   《C语言接口与实现:创建可重用软件的技术》可重用的软件模块是构建大规模可靠应用程序的基石,创建可重用的软件模块是每个程序员和项目经理必须掌握的技能。C语言对创建可重用的API提供的语言和功能支持非常少,虽然C程序员写应用时都会用到API和库,但却很少有人去创建和发布新的能广泛应用的API。《C语言接口与实现:创建可重用软件的技术》介绍用一种基于接口的设计方法创建可重用的API,这一方法将接口与实现分离开来,且与语言无关。书中详细描述了T24个接口及其实现,便于读者深入了解此方法。这些接口涉及很多计算机领域的知识,包括数据结构、算法、字符串处理和并发程序。《C语言接口与实现:创建可重用软件的技术》是C语言领域的经典名著,出版十余年仍畅销不衰,是几代程序员倍加推崇的力作。《C语言接口与实现:创建可重用软件的技术》特色:接口描述简单明了,程序员可将此书用作相关接口的参考手册,深入剖析如何将数据结构及其相关算法打包成可重用的模块,分析了全部24个API和8个示例应用的源代码,揭秘了许多鲜有文档的C语言编程技巧。

目录


第1章 引言 1
1.1 文学程序 2
1.2 程序设计风格 6
1.3 效率 8
1.4 扩展阅读 9
1.5 习题 9

第2章 接口与实现 11 2.1 接口 11 2.2 实现 13 2.3 抽象数据类型 15 2.4 客户程序的职责 17 2.5 效率 21 2.6 扩展阅读 22 2.7 习题 22

第3章 原子 24 3.1 接口 24 3.2 实现 25 3.3 扩展阅读 30 3.4 习题 31

第4章 异常与断言 33 4.1 接口 35 4.2 实现 38 4.3 断言 44 4.4 扩展阅读 46 4.5 习题 47

第5章 内存管理 49 5.1 接口 50 5.2 产品实现 54 5.3 稽核实现 55 5.4 扩展阅读 62 5.5 习题 63

第6章 再谈内存管理 65 6.1 接口 65 6.2 实现 67 6.3 扩展阅读 72 6.4 习题 73

第7章 链表 75 7.1 接口 75 7.2 实现 79 7.3 扩展阅读 83 7.4 习题 83

第8章 表 84 8.1 接口 84 8.2 例子:词频 87 8.3 实现 91 8.4 扩展阅读 97 8.5 习题 97

第9章 集合 99 9.1 接口 99 9.2 例子:交叉引用列表 101 9.3 实现 107 9.3.1 成员操作 109 9.3.2 集合操作 111 9.4 扩展阅读 114 9.5 习题 115

第10章 动态数组 116 10.1 接口 116 10.2 实现 119 10.3 扩展阅读 122 10.4 习题 122

第11章 序列 123 11.1 接口 123 11.2 实现 125 11.3 扩展阅读 129 11.4 习题 129

第12章 环 131 12.1 接口 131 12.2 实现 134 12.3 扩展阅读 141 12.4 习题 141

第13章 位向量 142 13.1 接口 142 13.2 实现 144 13.2.1 成员操作 146 13.2.2 比较 150 13.2.3 集合操作 151 13.3 扩展阅读 152 13.4 习题 153

第14章 格式化 154 14.1 接口 154 14.1.1 格式化函数 155 14.1.2 转换函数 157 14.2 实现 160 14.2.1 格式化函数 161 14.2.2 转换函数 166 14.3 扩展阅读 170 14.4 习题 171

第15章 低级字符串 172 15.1 接口 173 15.2 例子:输出标识符 178 15.3 实现 179 15.3.1 字符串操作 180 15.3.2 分析字符串 184 15.3.3 转换函数 188 15.4 扩展阅读 189 15.5 习题 189

第16章 高级字符串 192 16.1 接口 192 16.2 实现 197 16.2.1 字符串操作 200 16.2.2 内存管理 204 16.2.3 分析字符串 205 16.2.4 转换函数 209 16.3 扩展阅读 210 16.4 习题 210

第17章 扩展精度算术 212 17.1 接口 212 17.2 实现 217 17.2.1 加减法 218 17.2.2 乘法 220 17.2.3 除法和比较 221 17.2.4 移位 226 17.2.5 字符串转换 228 17.3 扩展阅读 230 17.4 习题 230

第18章 任意精度算术 232 18.1 接口 232 18.2 例子:计算器 235 18.3 实现 240 18.3.1 取反和乘法 242 18.3.2 加减法 243 18.3.3 除法 246 18.3.4 取幂 247 18.3.5 比较 249 18.3.6 便捷函数 250 18.3.7 移位 251 18.3.8 与字符串和整数的转换 252 18.4 扩展阅读 254 18.5 习题 255

第19章 多精度算术 257 19.1 接口 257 19.2 例子:另一个计算器 263 19.3 实现 269 19.3.1 转换 272 19.3.2 无符号算术 275 19.3.3 有符号算术 277 19.3.4 便捷函数 280 19.3.5 比较和逻辑操作 285 19.3.6 字符串转换 288 19.4 扩展阅读 290 19.5 习题 291

第20章 线程 292 20.1 接口 294 20.1.1 线程 294 20.1.2 一般信号量 298 20.1.3 同步通信通道 301 20.2 例子 301 20.2.1 并发排序 302 20.2.2 临界区 305 20.2.3 生成素数 307 20.3 实现 311 20.3.1 同步通信通道 311 20.3.2 线程 313 20.3.3 线程创建和上下文切换 322 20.3.4 抢占 328 20.3.5 一般信号量 330 20.3.6 MIPS和ALPHA上的上下文切换 332 20.4 扩展阅读 335 20.5 习题 336

附录A 接口摘要 339

参考书目 363

书籍下载

免费下载

正版书籍

C语言接口与实现 创建可重用软件的技术