C程序设计新思维

C程序设计新思维
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2015-05
版次: 1
ISBN: 9787115386281
定价: 49.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 266页
字数: 341千字
8人买过
  •   C语言已经有40年的历史了。经过长时间的发展和普及,C语言应用场景有了很大的变化,的一些旧观念应该被淡化或者不再被推荐。

      《C程序设计新思维》展现了传统C教科书所不具有的最新的相关技术。全书分为开发环境和语言两个部分,分别从编译、调试、测试、打包、版本控制等角度,以及指针、语法、文本、结构、面向对象编程、库等主题,对C程序设计的核心知识进行查缺补漏和反思。本书鼓励读者放弃那些对大型机才有意义的旧习惯,拿起新的工具来使用这门与时俱进的简洁语言。

      《C程序设计新思维》适合有一定基础的C程序员或C语言学习者阅读,也适合想要较为深入地理解C语言特性的读者参考。   Ben Klemens为布鲁金斯学会、世界银行、美国国家精神健康中心和美国政府编写统计分析和计算机模型。他与布鲁金斯学会和自由软件基金会一起合作,确保程序员保留其作品使用权的权利。 第一部分 开发环境

    第1章 准备方便的编译环境 

    1.1 使用包管理器 

    1.2 在Windows下编译C 

    1.2.1 Windows中的POSIX环境 

    1.2.2 在POSIX下编译C 

    1.2.3 不在POSIX环境中编译C 

    1.3 库的路径 

    1.3.1 一些我喜欢的选项 

    1.3.2 路径 

    1.3.3 运行时连接 

    1.4 使用Makefile 

    1.4.1 设定变量 

    1.4.2 规则 

    1.5 以源文件利用库 

    1.6 以源文件利用库(即使你的系统管理员不想叫你这么做) 

    1.7 通过本地文档来编译C程序 

    1.7.1 在命令行里包含头文件 

    1.7.2 统一的头文件 

    1.7.3 嵌入文档 

    1.7.4 从stdin中编译 

    第2章 调试、测试和文档 

    2.1 使用调试器 

    2.1.1 GDB变量 

    2.1.2 打印结构 

    2.2 利用Valgrind检查错误 

    2.3 单元测试 

    2.3.1 把程序用作库 

    2.3.2 测试覆盖 

    2.4 编制文档 

    2.4.1 Doxygen 

    2.4.2 用CWEB解释代码 

    2.5 错误检查 

    2.5.1 在错误中的用户参与是什么 

    2.5.2 用户工作的上下文环境 

    2.5.3 如何返回错误信息 

    第3章 打包项目 

    3.1 Shell 

    3.1.1 用shell命令的输出来替换命令 

    3.1.2 用shell的循环来处理一组文件 

    3.1.3 针对文件的测试 

    3.1.4 fc 

    3.2 makefile还是shell脚本 

    3.3 用Autotools打包代码 

    3.3.1 一个Autotools的示例 

    3.3.2 用makefile.am来描述makefile 

    3.3.3 配置脚本 

    第4章 版本控制 

    4.1 通过diff查看差异 

    4.2 Git的对象 

    4.3 树和它们的枝 

    4.3.1融合 

    4.3.2 迁移 

    4.4 远程版本库 

    第5章 和谐共处 

    5.1 过程 

    5.1.1 作为外来语言写程序 

    5.1.2 包装函数 

    5.1.3 跨越边境的代理数据结构 

    5.1.4 连接 

    5.2 与Python一起工作 

    5.2.1 编译与连接 

    5.2.2 Automake的条件子目录 

    5.2.3 Autotools支持下的Distutils 

    第二部分 语言

    第6章 玩转指针 

    6.1 自动、静态和手工内存 

    6.2 持久性的状态变量 

    6.3 不使用malloc的指针 

    6.3.1 结构被复制,数组创建别名 

    6.3.2 malloc和内存操纵 

    6.3.3 错误来源于星号 

    6.3.4 你需要知道的各种指针运算 

    第7章 可以忽略的C语法 

    7.1 不需要明确地从main函数返回 

    7.2 让声明流动 

    在运行时设置数组的长度 

    7.3 减少类型转换 

    7.4 枚举和字符串 

    7.5 标签、goto、switch和break 

    7.5.1 考虑goto 

    7.5.2 switch 

    7.6 被摒弃的float 

    第8章 障碍和机遇 

    8.1 营造健壮和繁盛的宏 

    预处理器技巧 

    8.2 static和extern链接 

    只在头文件中声明外部链接的元素 

    8.3 const关键字 

    8.3.1 名词-形容词形式 

    8.3.2 压力 

    8.3.3 深度 

    8.3.4 char const **问题 

    第9章 文本 

    9.1 使用asprintf,使字符串的处理不再痛苦 

    9.1.1 安全 

    9.1.2 常量字符串 

    9.1.3 用asprintf扩展字符串 

    9.1.4 strtok的赞歌 

    9.2 Unicode 

    9.2.1 C代码的编码 

    9.2.2 Unicode函数库 

    9.2.3 示例代码 

    第10章 更好的结构 

    10.1 复合文字 

    通过复合文字进行初始化 

    10.2 可变参数宏 

    10.3 安全终止的列表 

    10.4 Foreach 

    10.5 函数的向量化 

    10.6 指定的初始化值 

    10.7 用零初始化数组和结构 

    10.8 typedef可以化繁为简 

    10.9 从函数返回多个数据项 

    10.10 灵活的函数输入 

    10.10.1 把函数声明为printf风格 

    10.10.2 可选参数和命名参数 

    10.10.3 使无聊的函数焕发光彩 

    10.11 void指针以及它所指向的结构 

    10.11.1 具有通用输入的函数 

    10.11.2 通用结构 

    第11章 C语言的面向对象编程 

    11.1 你所不明白的(以及为什么你不能不明白) 

    11.1.1 作用域 

    11.1.2 用操作符重载进行重载 

    11.2 扩展结构和字典 

    11.2.1 扩展一个结构 

    11.2.2 实现一个字典 

    11.2.3 基于指向对象的指针编码 

    11.3 你结构中的函数 

    11.4 引用计数 

    11.4.1 示例:一个子字符串对象 

    11.4.2 一个基于代理的组构造模型 

    第12章 库 

    12.1 GLib 

    12.2 POSIX 

    12.2.1 为巨大的数据集合使用mmap 

    12.2.2 用Pthreads轻松实现线程 

    12.3 GNU科学计算库 

    12.4 SQLite 

    12.5 libxml和cURL 

    后记 

    术语表
  • 内容简介:
      C语言已经有40年的历史了。经过长时间的发展和普及,C语言应用场景有了很大的变化,的一些旧观念应该被淡化或者不再被推荐。

      《C程序设计新思维》展现了传统C教科书所不具有的最新的相关技术。全书分为开发环境和语言两个部分,分别从编译、调试、测试、打包、版本控制等角度,以及指针、语法、文本、结构、面向对象编程、库等主题,对C程序设计的核心知识进行查缺补漏和反思。本书鼓励读者放弃那些对大型机才有意义的旧习惯,拿起新的工具来使用这门与时俱进的简洁语言。

      《C程序设计新思维》适合有一定基础的C程序员或C语言学习者阅读,也适合想要较为深入地理解C语言特性的读者参考。
  • 作者简介:
      Ben Klemens为布鲁金斯学会、世界银行、美国国家精神健康中心和美国政府编写统计分析和计算机模型。他与布鲁金斯学会和自由软件基金会一起合作,确保程序员保留其作品使用权的权利。
  • 目录:
    第一部分 开发环境

    第1章 准备方便的编译环境 

    1.1 使用包管理器 

    1.2 在Windows下编译C 

    1.2.1 Windows中的POSIX环境 

    1.2.2 在POSIX下编译C 

    1.2.3 不在POSIX环境中编译C 

    1.3 库的路径 

    1.3.1 一些我喜欢的选项 

    1.3.2 路径 

    1.3.3 运行时连接 

    1.4 使用Makefile 

    1.4.1 设定变量 

    1.4.2 规则 

    1.5 以源文件利用库 

    1.6 以源文件利用库(即使你的系统管理员不想叫你这么做) 

    1.7 通过本地文档来编译C程序 

    1.7.1 在命令行里包含头文件 

    1.7.2 统一的头文件 

    1.7.3 嵌入文档 

    1.7.4 从stdin中编译 

    第2章 调试、测试和文档 

    2.1 使用调试器 

    2.1.1 GDB变量 

    2.1.2 打印结构 

    2.2 利用Valgrind检查错误 

    2.3 单元测试 

    2.3.1 把程序用作库 

    2.3.2 测试覆盖 

    2.4 编制文档 

    2.4.1 Doxygen 

    2.4.2 用CWEB解释代码 

    2.5 错误检查 

    2.5.1 在错误中的用户参与是什么 

    2.5.2 用户工作的上下文环境 

    2.5.3 如何返回错误信息 

    第3章 打包项目 

    3.1 Shell 

    3.1.1 用shell命令的输出来替换命令 

    3.1.2 用shell的循环来处理一组文件 

    3.1.3 针对文件的测试 

    3.1.4 fc 

    3.2 makefile还是shell脚本 

    3.3 用Autotools打包代码 

    3.3.1 一个Autotools的示例 

    3.3.2 用makefile.am来描述makefile 

    3.3.3 配置脚本 

    第4章 版本控制 

    4.1 通过diff查看差异 

    4.2 Git的对象 

    4.3 树和它们的枝 

    4.3.1融合 

    4.3.2 迁移 

    4.4 远程版本库 

    第5章 和谐共处 

    5.1 过程 

    5.1.1 作为外来语言写程序 

    5.1.2 包装函数 

    5.1.3 跨越边境的代理数据结构 

    5.1.4 连接 

    5.2 与Python一起工作 

    5.2.1 编译与连接 

    5.2.2 Automake的条件子目录 

    5.2.3 Autotools支持下的Distutils 

    第二部分 语言

    第6章 玩转指针 

    6.1 自动、静态和手工内存 

    6.2 持久性的状态变量 

    6.3 不使用malloc的指针 

    6.3.1 结构被复制,数组创建别名 

    6.3.2 malloc和内存操纵 

    6.3.3 错误来源于星号 

    6.3.4 你需要知道的各种指针运算 

    第7章 可以忽略的C语法 

    7.1 不需要明确地从main函数返回 

    7.2 让声明流动 

    在运行时设置数组的长度 

    7.3 减少类型转换 

    7.4 枚举和字符串 

    7.5 标签、goto、switch和break 

    7.5.1 考虑goto 

    7.5.2 switch 

    7.6 被摒弃的float 

    第8章 障碍和机遇 

    8.1 营造健壮和繁盛的宏 

    预处理器技巧 

    8.2 static和extern链接 

    只在头文件中声明外部链接的元素 

    8.3 const关键字 

    8.3.1 名词-形容词形式 

    8.3.2 压力 

    8.3.3 深度 

    8.3.4 char const **问题 

    第9章 文本 

    9.1 使用asprintf,使字符串的处理不再痛苦 

    9.1.1 安全 

    9.1.2 常量字符串 

    9.1.3 用asprintf扩展字符串 

    9.1.4 strtok的赞歌 

    9.2 Unicode 

    9.2.1 C代码的编码 

    9.2.2 Unicode函数库 

    9.2.3 示例代码 

    第10章 更好的结构 

    10.1 复合文字 

    通过复合文字进行初始化 

    10.2 可变参数宏 

    10.3 安全终止的列表 

    10.4 Foreach 

    10.5 函数的向量化 

    10.6 指定的初始化值 

    10.7 用零初始化数组和结构 

    10.8 typedef可以化繁为简 

    10.9 从函数返回多个数据项 

    10.10 灵活的函数输入 

    10.10.1 把函数声明为printf风格 

    10.10.2 可选参数和命名参数 

    10.10.3 使无聊的函数焕发光彩 

    10.11 void指针以及它所指向的结构 

    10.11.1 具有通用输入的函数 

    10.11.2 通用结构 

    第11章 C语言的面向对象编程 

    11.1 你所不明白的(以及为什么你不能不明白) 

    11.1.1 作用域 

    11.1.2 用操作符重载进行重载 

    11.2 扩展结构和字典 

    11.2.1 扩展一个结构 

    11.2.2 实现一个字典 

    11.2.3 基于指向对象的指针编码 

    11.3 你结构中的函数 

    11.4 引用计数 

    11.4.1 示例:一个子字符串对象 

    11.4.2 一个基于代理的组构造模型 

    第12章 库 

    12.1 GLib 

    12.2 POSIX 

    12.2.1 为巨大的数据集合使用mmap 

    12.2.2 用Pthreads轻松实现线程 

    12.3 GNU科学计算库 

    12.4 SQLite 

    12.5 libxml和cURL 

    后记 

    术语表
查看详情
相关图书 / 更多
C程序设计新思维
C程序设计试题汇编(第四版)
谭浩强、鲍有文、周海燕、赵重敏、鞠慧敏
C程序设计新思维
C程序设计与问题求解
刘杰;鞠成东;丛晓红
C程序设计新思维
C程序设计
朱晓燕 主编;陈刚 程欣宇 沈宁 李支成 朱家成 副主编
C程序设计新思维
C程序设计教程(第4版)学习辅导
谭浩强
C程序设计新思维
C程序设计与问题求解实践教程
刘杰;徐丽;孟宇龙
C程序设计新思维
C程序设计习题解析及实践指导
郭伟青
C程序设计新思维
C程序设计(基于Linux平台)(微课版)
张同光;刘春红;田乔梅;武晓龙;宋丽丽
C程序设计新思维
C程序设计上机指导与习题集
王琳艳 主编;刘警 汪飞 王继克 副主编
C程序设计新思维
C程序设计教程(第4版)()
谭浩强 著
C程序设计新思维
C程序设计
张朋 张丕振 主编;顾健 马玲 孟庆新 刘晓慧 范彬 宋丹茹 周本海 赵越 副主编
C程序设计新思维
C程序设计基础(英文版)
汪芳
C程序设计新思维
C程序设计(第2版)(大学计算机基础教育特色教材系列)
姜学锋、刘君瑞 著