现代C:概念剖析和编程实践

现代C:概念剖析和编程实践
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [德] (Jens Gustedt)
2021-07
ISBN: 9787111681960
定价: 119.00
装帧: 平装
开本: 16开
纸张: 胶版纸
  • 这本书按级别组织,编号从0到3。初始级别0,名为“邂逅”,它将总结使用C进行编程的基础知识。它的主要作用是提醒你我们所提到的主要概念,并使你熟悉C应用的特殊词汇。 
    第1级“相识”详细描述了大多数主要概念和特性,如控制结构、数据类型、操作符和函数。  
    第2级“相知”是C语言的核心,完全解释了指针,使你熟悉C的内存模型,并使你能够理解C的大部分库函数接口。 
    第3级“深入”详细介绍了特定主题,如性能、可重复输入、原子性、线程和泛类型编程。 Jens Gustedt在波恩大学和柏林工业大学完成了他的数学学业。他当时的研究涉及离散数学与高效计算的交叉。自1998年以来,他一直在法国国家信息与自动化研究所(INRIA)担任高级科学家,先是在法国南锡的LORIA实验室工作,自2013年起在斯特拉斯堡的ICube实验室工作。 
    在整个职业生涯中,他的大部分科学研究一直伴随着软件的发展,一开始主要是C++,然后又专注于C。他现在作为ISO委员会JTC1/SC22/WG14的专家为AFNOR服务,并且是C标准文档ISO/IEC 9899:2018的联合编辑。他还有一个成功的博客,涉及C语言编程和相关主题:https://gustedt.wordpress.com。 

    【第0级 邂逅】 
    第1章 入门  2 
    1.1 命令式编程  3 
    1.2 编译和运行  4 
    第2章 程序的主要结构  8 
    2.1 语法  8 
    2.2 声明  10 
    2.3 定义  12 
    2.4 语句  13 
    2.4.1 循环  14 
    2.4.2 函数调用  14 
    2.4.3 函数返回  15 

     
    【第1级 相识】 
    第3章 一切都和控制有关  21 
    3.1 条件执行  21 
    3.2 循环  24 
    3.3 多重选择  28 
    第4章 表达式计算  31 
    4.1 算术  33 
    4.1.1 +、-和*  34 
    4.1.2 除法和余数  34 
    4.2 修改对象的运算符  35 
    4.3 布尔情景  36 
    4.3.1 比较  36 
    4.3.2 逻辑  37 
    4.4 三元或条件运算符  38 
    4.5 求值顺序  39 
    第5章 基本值和数据  41 
    5.1 抽象状态机  42 
    5.1.1 值  43 
    5.1.2 类型  44 
    5.1.3 二进制表示和抽象状态机  44 
    5.1.4 优化  45 
    5.2 基本类型  46 
    5.3 指定值  49 
    5.4 隐式转换  52 
    5.5 初始值设定  55 
    5.6 命名常量  56 
    5.6.1 只读对象  57 
    5.6.2 枚举  58 
    5.6.3 宏  59 
    5.6.4 复合字面量  60 
    5.7 二进制表示  61 
    5.7.1 无符号整型  61 
    5.7.2 位集和按位运算符  62 
    5.7.3 位移运算符  63 
    5.7.4 布尔值  64 
    5.7.5 有符号整型  64 
    5.7.6 固定宽度整型  67 
    5.7.7 浮点数据  68 
    第6章 派生数据类型  70 
    6.1 数组  71 
    6.1.1 数组声明  71 
    6.1.2 数组操作  72 
    6.1.3 数组长度  72 
    6.1.4 数组作为参数  73 
    6.1.5 字符串是特殊的  74 
    6.2 指针作为不透明类型  77 
    6.3 结构  79 
    6.4 类型的新名称:类型别名  85 
    第7章 函数  87 
    7.1 简单函数  88 
    7.2 main是特殊的函数  90 
    7.3 递归  91 
    第8章 C库函数  98 
    8.1 C库函数的一般特性及功能  98 
    8.1.1 头文件  99 
    8.1.2 接口  100 
    8.1.3 错误检查  100 
    8.1.4 边界检查接口  101 
    8.1.5 平台前提条件  102 
    8.2 数学  103 
    8.3 输入、输出和文件操作  105 
    8.3.1 无格式文本输出  105 
    8.3.2 文件和流  107 
    8.3.3 文本IO  109 
    8.3.4 格式化输出  110 
    8.3.5 无格式文本输入  113 
    8.4 字符串处理和转换  115 
    8.5 时间  119 
    8.6 运行时环境设置  123 
    8.7 程序终止和断言  125 

     
    【第2级 相知】 
    第9章 风格  130 
    9.1 格式  131 
    9.2 命名  132 
    第10章 组织与文档  136 
    10.1 接口文档  137 
    10.2 实现  139 
    10.2.1 宏  140 
    10.2.2 纯函数  142 
    第11章 指针  147 
    11.1 指针操作  148 
    11.1.1 操作符的地址和对象  148 
    11.1.2 指针加法  149 
    11.1.3 指针减法和差  151 
    11.1.4 指针合法性  153 
    11.1.5 空指针  155 
    11.2 指针和结构  156 
    11.3 指针和数组  159 
    11.3.1 数组访问和指针访问是一样的  160 
    11.3.2 数组参数和指针参数是一样的  160 
    11.4 函数指针  161 
    第12章 C内存模型  167 
    12.1 统一内存模型  168 
    12.2 union  169 
    12.3 内存和状态  171 
    12.4 指向非特定对象的指针  172 
    12.5 显式转换  173 
    12.6 有效类型  175 
    12.7 对齐  176 
    第13章 存储  179 
    13.1 malloc和友元  180 
    13.1.1 具有可变数组大小的 
    一个完整例子  181 
    13.1.2 确保动态分配的一致性  188 
    13.2 存储持续时间、生命周期和可见度  189 
    13.2.1 静态存储持续时间  192 
    13.2.2 自动存储持续时间  193 
    13.3 题外话:在定义对象之前使用对象  194 
    13.4 初始化  196 
    13.5 题外话:机器模型  198 
    第14章 涉及更多的处理和IO  202 
    14.1 文本处理  202 
    14.2 格式化输入  209 
    14.3 扩展字符集  210 
    14.4 二进制流  218 
    14.5 错误检查和清理  219 

     
    【第3级 深入】 
    第15章 性能  226 
    15.1 内联函数  228 
    15.2 使用restrict限定符  232 
    15.3 测量和检验  233 
    第16章 类似函数的宏  242 
    16.1 类似函数的宏如何工作  243 
    16.2 参数检查  245 
    16.3 访问调用上下文  249 
    16.4 默认参数  252 
    16.5 可变长度参数列表  253 
    16.5.1 可变长参数宏  253 
    16.5.2 绕道:可变长参数函数  258 
    16.6 泛类型编程  261 
    第17章 控制流中的变化  268 
    17.1 一个复杂的例子  270 
    17.2 排序  272 
    17.3 短跳转  275 
    17.4 函数  276 
    17.5 长跳转  277 
    17.6 信号处理程序  281 
    第18章 线程  291 
    18.1 简单的线程间控制  294 
    18.2 无竞争初始化和销毁  296 
    18.3 线程本地数据  299 
    18.4 临界数据和临界区  299 
    18.5 通过条件变量进行通信  302 
    18.6 更复杂的线程管理  307 
    第19章 原子访问和内存一致性  310 
    19.1 “以前发生的”关系  311 
    19.2 C库调用提供同步  314 
    19.3 顺序的一致性  316 
    19.4 其他一致性模型  318 
    要点  320 
    参考文献  333
  • 内容简介:
    这本书按级别组织,编号从0到3。初始级别0,名为“邂逅”,它将总结使用C进行编程的基础知识。它的主要作用是提醒你我们所提到的主要概念,并使你熟悉C应用的特殊词汇。 
    第1级“相识”详细描述了大多数主要概念和特性,如控制结构、数据类型、操作符和函数。  
    第2级“相知”是C语言的核心,完全解释了指针,使你熟悉C的内存模型,并使你能够理解C的大部分库函数接口。 
    第3级“深入”详细介绍了特定主题,如性能、可重复输入、原子性、线程和泛类型编程。
  • 作者简介:
    Jens Gustedt在波恩大学和柏林工业大学完成了他的数学学业。他当时的研究涉及离散数学与高效计算的交叉。自1998年以来,他一直在法国国家信息与自动化研究所(INRIA)担任高级科学家,先是在法国南锡的LORIA实验室工作,自2013年起在斯特拉斯堡的ICube实验室工作。 
    在整个职业生涯中,他的大部分科学研究一直伴随着软件的发展,一开始主要是C++,然后又专注于C。他现在作为ISO委员会JTC1/SC22/WG14的专家为AFNOR服务,并且是C标准文档ISO/IEC 9899:2018的联合编辑。他还有一个成功的博客,涉及C语言编程和相关主题:https://gustedt.wordpress.com。 

  • 目录:
    【第0级 邂逅】 
    第1章 入门  2 
    1.1 命令式编程  3 
    1.2 编译和运行  4 
    第2章 程序的主要结构  8 
    2.1 语法  8 
    2.2 声明  10 
    2.3 定义  12 
    2.4 语句  13 
    2.4.1 循环  14 
    2.4.2 函数调用  14 
    2.4.3 函数返回  15 

     
    【第1级 相识】 
    第3章 一切都和控制有关  21 
    3.1 条件执行  21 
    3.2 循环  24 
    3.3 多重选择  28 
    第4章 表达式计算  31 
    4.1 算术  33 
    4.1.1 +、-和*  34 
    4.1.2 除法和余数  34 
    4.2 修改对象的运算符  35 
    4.3 布尔情景  36 
    4.3.1 比较  36 
    4.3.2 逻辑  37 
    4.4 三元或条件运算符  38 
    4.5 求值顺序  39 
    第5章 基本值和数据  41 
    5.1 抽象状态机  42 
    5.1.1 值  43 
    5.1.2 类型  44 
    5.1.3 二进制表示和抽象状态机  44 
    5.1.4 优化  45 
    5.2 基本类型  46 
    5.3 指定值  49 
    5.4 隐式转换  52 
    5.5 初始值设定  55 
    5.6 命名常量  56 
    5.6.1 只读对象  57 
    5.6.2 枚举  58 
    5.6.3 宏  59 
    5.6.4 复合字面量  60 
    5.7 二进制表示  61 
    5.7.1 无符号整型  61 
    5.7.2 位集和按位运算符  62 
    5.7.3 位移运算符  63 
    5.7.4 布尔值  64 
    5.7.5 有符号整型  64 
    5.7.6 固定宽度整型  67 
    5.7.7 浮点数据  68 
    第6章 派生数据类型  70 
    6.1 数组  71 
    6.1.1 数组声明  71 
    6.1.2 数组操作  72 
    6.1.3 数组长度  72 
    6.1.4 数组作为参数  73 
    6.1.5 字符串是特殊的  74 
    6.2 指针作为不透明类型  77 
    6.3 结构  79 
    6.4 类型的新名称:类型别名  85 
    第7章 函数  87 
    7.1 简单函数  88 
    7.2 main是特殊的函数  90 
    7.3 递归  91 
    第8章 C库函数  98 
    8.1 C库函数的一般特性及功能  98 
    8.1.1 头文件  99 
    8.1.2 接口  100 
    8.1.3 错误检查  100 
    8.1.4 边界检查接口  101 
    8.1.5 平台前提条件  102 
    8.2 数学  103 
    8.3 输入、输出和文件操作  105 
    8.3.1 无格式文本输出  105 
    8.3.2 文件和流  107 
    8.3.3 文本IO  109 
    8.3.4 格式化输出  110 
    8.3.5 无格式文本输入  113 
    8.4 字符串处理和转换  115 
    8.5 时间  119 
    8.6 运行时环境设置  123 
    8.7 程序终止和断言  125 

     
    【第2级 相知】 
    第9章 风格  130 
    9.1 格式  131 
    9.2 命名  132 
    第10章 组织与文档  136 
    10.1 接口文档  137 
    10.2 实现  139 
    10.2.1 宏  140 
    10.2.2 纯函数  142 
    第11章 指针  147 
    11.1 指针操作  148 
    11.1.1 操作符的地址和对象  148 
    11.1.2 指针加法  149 
    11.1.3 指针减法和差  151 
    11.1.4 指针合法性  153 
    11.1.5 空指针  155 
    11.2 指针和结构  156 
    11.3 指针和数组  159 
    11.3.1 数组访问和指针访问是一样的  160 
    11.3.2 数组参数和指针参数是一样的  160 
    11.4 函数指针  161 
    第12章 C内存模型  167 
    12.1 统一内存模型  168 
    12.2 union  169 
    12.3 内存和状态  171 
    12.4 指向非特定对象的指针  172 
    12.5 显式转换  173 
    12.6 有效类型  175 
    12.7 对齐  176 
    第13章 存储  179 
    13.1 malloc和友元  180 
    13.1.1 具有可变数组大小的 
    一个完整例子  181 
    13.1.2 确保动态分配的一致性  188 
    13.2 存储持续时间、生命周期和可见度  189 
    13.2.1 静态存储持续时间  192 
    13.2.2 自动存储持续时间  193 
    13.3 题外话:在定义对象之前使用对象  194 
    13.4 初始化  196 
    13.5 题外话:机器模型  198 
    第14章 涉及更多的处理和IO  202 
    14.1 文本处理  202 
    14.2 格式化输入  209 
    14.3 扩展字符集  210 
    14.4 二进制流  218 
    14.5 错误检查和清理  219 

     
    【第3级 深入】 
    第15章 性能  226 
    15.1 内联函数  228 
    15.2 使用restrict限定符  232 
    15.3 测量和检验  233 
    第16章 类似函数的宏  242 
    16.1 类似函数的宏如何工作  243 
    16.2 参数检查  245 
    16.3 访问调用上下文  249 
    16.4 默认参数  252 
    16.5 可变长度参数列表  253 
    16.5.1 可变长参数宏  253 
    16.5.2 绕道:可变长参数函数  258 
    16.6 泛类型编程  261 
    第17章 控制流中的变化  268 
    17.1 一个复杂的例子  270 
    17.2 排序  272 
    17.3 短跳转  275 
    17.4 函数  276 
    17.5 长跳转  277 
    17.6 信号处理程序  281 
    第18章 线程  291 
    18.1 简单的线程间控制  294 
    18.2 无竞争初始化和销毁  296 
    18.3 线程本地数据  299 
    18.4 临界数据和临界区  299 
    18.5 通过条件变量进行通信  302 
    18.6 更复杂的线程管理  307 
    第19章 原子访问和内存一致性  310 
    19.1 “以前发生的”关系  311 
    19.2 C库调用提供同步  314 
    19.3 顺序的一致性  316 
    19.4 其他一致性模型  318 
    要点  320 
    参考文献  333
查看详情
12
您可能感兴趣 / 更多
现代C:概念剖析和编程实践
论作为科学的法学的不可或缺性(德国法学名家名篇)
[德]卡尔·拉伦茨 著;赵阳 译
现代C:概念剖析和编程实践
金融AI算法:人工智能在金融领域的前沿应用指南
[德]克里斯蒂安·L.迪尼(Christian L.Dunis) 著;武鑫、张帅、张笑 译
现代C:概念剖析和编程实践
在阴影中向太阳奔跑
[德]尼采 著;六六 译
现代C:概念剖析和编程实践
集合啦!全世界的动物
[德]克里斯蒂娜•汉克尔 著;浪花朵朵 编
现代C:概念剖析和编程实践
光学
[德]阿诺德·索末菲(Arnold Sommerfeld) 著;徐朝鹏 译
现代C:概念剖析和编程实践
世界经典神话与传说故事(中小学生课外阅读指导丛书)无障碍阅读 彩插励志版
[德]古斯塔夫 施瓦布 著
现代C:概念剖析和编程实践
情感学习:儿童文学如何教我们感受情绪(一部有关孩子的情感史、阅读史、社会生活史)
[德]乌特·弗雷弗特 著;黄怀庆 译
现代C:概念剖析和编程实践
科学何去何从普朗克爱因斯坦科普读物巨人的肩膀
[德]马克斯·普朗克 著;谢海伦 译
现代C:概念剖析和编程实践
布达佩斯大饭店:随书赠送生活美学创意门牌+邀请函+DIY点心盒
[德]马特·佐勒·塞茨 著
现代C:概念剖析和编程实践
格林童话(有声版)/蜗牛小经典
[德]格林兄弟 著;杨武能 译
现代C:概念剖析和编程实践
台风登陆上海
[德]弗里德里希·李希特内柯 著;张帆 编;陈丽竹 译
现代C:概念剖析和编程实践
白雪公主-不让妈妈讲故事360°全景立体书
[德]格林兄弟 著