×
超值优惠券
¥50
100可用 有效期2天

全场图书通用(淘书团除外)

关闭
暂无评论
图文详情
  • ISBN:9787519888534
  • 装帧:一般胶版纸
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:340
  • 出版时间:2024-07-01
  • 条形码:9787519888534 ; 978-7-5198-8853-4

本书特色

在C语言编程的领域,很难得到专家的建议。尽管面向对象的编程语言有大量的帮助可供选择,但对于C语言却出奇地少。有了这本实战指南,无论是初学者还是经验丰富的C语言程序员,都能找到有关设计决策的指导,包括如何逐步将它们应用到构建大规模程序时的运行代码示例中。 专家推荐“本书是一个优秀的资源,它介绍了许多实际应用的例子,帮助你使代码更加整洁和易于维护。” ——David Griffiths 《Head First C》的作者 “这本书指导初学者用C语言制作企业级产品。” ——Robert Hanmer 软件架构师 本书会讲解基本的编程概念并演示如何在C语言中运用这些概念。在阅读本书的过程中,你会看到如何利用这些概念来组织程序的结构,并编写出可以运行的C程序。有一些范例会演示函数、数据类型以及条件语句的用法,另一些则会演示循环、迭代、数组、指针与字符串的用法。这些范例会让你逐渐了解如何在代码中添加注释、如何测试并验证程序的结果是否正确、如何使用基本的输入与输出机制,以及如何编写完整的应用程序。

内容简介

本书分为两部分。在第I部分中,你将学习到如何为C编程语言专门实施用于实战设计的知识。第II部分包括将C编程模式应用于实现大型程序的经验。你将了解到如何通过拥有良好的设计决策的设计模式使得生活更轻松。本书包括以下模式:错误处理。返回错误信息。内存管理。从C函数返回数据。数据的生命周期和所有权。灵活的API。灵活的迭代器接口。在模块化程序中组织文件。逃离#ifdef地狱。

目录

目录 前言 ..1 第I 部分 C 语言的模式 第1 章 错误处理 21 1.1 运行示例23 1.2 函数拆分24 1.3 守卫子句28 1.4 武士原则32 1.5 Goto 处理错误 36 1.6 清理记录40 1.7 基于对象的错误处理 ..43 1.8 总结 .48 1.9 进一步阅读 ..48 1.10 展望 ..49 第2 章 返回错误信息 ..51 2.1 运行示例53 2.2 返回状态码 ..54 2.3 返回相关错误 .62 2.4 特定返回值 ..69 2.5 错误日志73 2.6 总结 .80 2.7 进一步阅读 ..81 2.8 展望 .81 第3 章 内存管理 83 3.1 动态内存中的数据存储与问题 ..85 3.2 运行示例87 3.3 栈优先 88 3.4 永久内存92 3.5 懒清理 96 3.6 专属所有权 101 3.7 分配包装器 105 3.8 指针检查. 110 3.9 内存池 . 114 3.10 总结 121 3.11 进一步阅读 .121 3.12 展望 122 第4 章 从C 的函数中返回数据 . 123 4.1 运行示例.125 4.2 返回值 .126 4.3 输出参数.130 4.4 聚合实例.135 4.5 不可变实例 140 4.6 调用者自持缓冲区 .144 4.7 被调用者分配 ..149 4.8 总结 ..154 4.9 展望 ..154 第5 章 数据的生命周期及所有权 . 155 5.1 无状态的软件模块 .157 5.2 带有全局状态的软件模块 .162 5.3 调用者自持实例 .168 5.4 共享实例.174 5.5 总结 ..182 5.6 进一步阅读 182 5.7 展望 ..183 第6 章 灵活的API . 185 6.1 头文件 .187 6.2 句柄 ..191 6.3 动态接口.195 6.4 函数控制.199 6.5 总结 ..203 6.6 进一步阅读 204 6.7 展望 ..204 第7 章 灵活的迭代器接口 .. 205 7.1 运行示例.207 7.2 索引访问.208 7.3 游标迭代器 213 7.4 回调迭代器 218 7.5 总结 ..224 7.6 进一步阅读 225 7.7 展望 ..226 第8 章 在模块化程序中组织文件 . 227 8.1 运行示例.229 8.2 引用守卫.232 8.3 软件模块目录 ..235 8.4 全局引用目录 ..241 8.5 自包含组件 246 8.6 API 复制 .252 8.7 总结 ..262 8.8 展望 ..262 第9 章 逃离#ifdef 地狱 263 9.1 运行示例.265 9.2 避免变体.267 9.3 独立元函数 271 9.4 原子元函数 275 9.5 抽象层 .278 9.6 拆分变体实现 ..284 9.7 总结 ..291 9.8 进一步阅读 292 9.9 展望 ..292 第II 部分 模式故事 第10 章 实现日志功能 . 295 10.1 模式的故事 .295 10.1.1 文件组织 296 10.1.2 核心日志函数 ..297 10.1.3 日志源过滤器 ..299 10.1.4 条件日志记录 ..301 10.1.5 多个记录日志的地方 302 10.1.6 文件日志记录 ..304 10.1.7 跨平台文件305 10.1.8 使用日志记录器 .308 10.2 总结 309 第11 章 构建用户管理系统 311 11.1 模式的故事 . 311 11.1.1 数据组织 311 11.1.2 文件组织 313 11.1.3 认证:错误处理 .315 11.1.4 认证:错误日志 .317 11.1.5 添加用户:错误处理 318 11.1.6 迭代 ..321 11.1.7 使用用户管理系统 323 11.2 总结 324 第12 章 总结 .. 327 12.1 你学到的内容 327 12.2 进一步阅读 .327 12.3 结束语 ..328
展开全部

作者简介

[奥]克里斯托弗·普雷斯切恩(Christopher Preschern),组织设计模式会议并发起提高设计模式编写的活动。作为ABB公司的一名C语言程序员,他收集并记录了如何编写企业级代码的实战知识。他曾在Graz University of Technology讲授编程和编程质量,并拥有计算机科学博士学位。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航