登入帳戶  | 訂單查詢  | 購物車/收銀台(0) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入   新用戶註冊
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / 物流,時效:出貨後2-4日

2024年10月出版新書

2024年09月出版新書

2024年08月出版新書

2024年07月出版新書

2024年06月出版新書

2024年05月出版新書

2024年04月出版新書

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

『簡體書』C和C++经典著作:C和指针+C专家编程+C陷阱与缺陷(共3册)

書城自編碼: 3571456
分類: 簡體書→大陸圖書→計算機/網絡程序設計
作者: [美]肯尼斯·里科 [美]彼得·范德林登[美]安德鲁·凯尼格
國際書號(ISBN): 9787X29168254
出版社: 人民邮电出版社
出版日期: 2020-11-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:NT$ 1302

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
甲骨文丛书·消逝的光明:欧洲国际史,1919—1933年(套装全2册)
《 甲骨文丛书·消逝的光明:欧洲国际史,1919—1933年(套装全2册) 》

售價:NT$ 1265.0
剑桥日本戏剧史(剑桥世界戏剧史译丛)
《 剑桥日本戏剧史(剑桥世界戏剧史译丛) 》

售價:NT$ 918.0
中国高等艺术院校精品教材大系:材料的时尚表达??服装创意设计
《 中国高等艺术院校精品教材大系:材料的时尚表达??服装创意设计 》

售價:NT$ 347.0
美丽与哀愁:第一次世界大战个人史
《 美丽与哀愁:第一次世界大战个人史 》

售價:NT$ 653.0
国家豁免法的域外借鉴与实践建议
《 国家豁免法的域外借鉴与实践建议 》

售價:NT$ 857.0
大单元教学设计20讲
《 大单元教学设计20讲 》

售價:NT$ 347.0
儿童自我关怀练习册:做自己最好的朋友
《 儿童自我关怀练习册:做自己最好的朋友 》

售價:NT$ 316.0
高敏感女性的力量(意大利心理学家FSP博士重磅力作。高敏感是优势,更是力量)
《 高敏感女性的力量(意大利心理学家FSP博士重磅力作。高敏感是优势,更是力量) 》

售價:NT$ 286.0

編輯推薦:
C C经典著作三剑客,帮助C程序员绕过编程过程中的陷阱和障碍,掌握C编程精髓!
1.C指针经典之作2020*版,全球畅销30余年,影响了国内外好几代程序员的C语言圣经级作品,中文版累计销售14w 册;
2.此书获得了ACUU的高度评价,ACCU主席Francis Glassborow倾力推荐;
3.本书凸现指针对C的重要性,提供宝贵的提示和智慧的警告,向大家展示指针在C程序中的巨大威力;
4.本书提供与C语言编程相关的全面资源和深入讨论,通过对指针的基础知识和高级特性的探讨,帮助程序员把指针的强大功能融入到自己的程序中去。
提供了完整的背景信息,以方便读者全面理解C语言;
全面介绍了指针的内容,包括语法、有效使用指针的艺术,以及指针的常见编程惯用法;
对实现通用抽象数据结构的不同方法进行了比较;
使用简单、熟悉的写作风格来清楚解释难度较大的主题,并使用大量的插图和图表将复杂的概念进行可视化;
讨论了编程技巧、效率、可移植性和软件工程等问题,并利用警告的方式对一些常见的编程陷阱进行了标注;
介绍了C标准库中的每一个函数。
这是一本非常与众不同的C语言图书,本书采用轻
內容簡介:
《C和指针》《C和指针》提供与C语言编程相关的全面资源和深入讨论。本书通过对指针的基础知识和高级特性的探讨,帮助程序员把指针的强大功能融入到自己的程序中去。
全书共18章,覆盖了数据、语句、操作符和表达式、指针、函数、数组、字符串、结构和联合等几乎所有重要的C编程话题。书中给出了很多编程技巧和提示,每章后面有针对性很强的练习,附录部分则给出了部分练习的解答。
《C和指针》适合C语言初学者和初级C程序员阅读,也可作为计算机专业学生学习C语言的参考。
《C专家编程》《C专家编程》展示了优秀的C程序员所使用的编码技巧,并专门开辟了一章对C的基础知识进行了介绍。
《C专家编程》对C的历史、语言特性、声明、数组、指针、链接、运行时、内存以及如何进一步学习C等问题进行了细致的讲解和深入的分析。本书撷取几十个实例进行讲解,对C程序员具有非常高的实用价值。
《C专家编程》可以帮助有一定经验的C程序员成为C编程方面的专家;对于C语言功底深厚的程序员,本书可以帮助他们站在C的高度了解和学习C。《C和指针》《C和指针》提供与C语言编程相关的全面资源和深入讨论。本书通过对指针的基础知识和高级特性的探讨,帮助程序员把指针的强大功能融入到自己的程序中去。
全书共18章,覆盖了数据、语句、操作符和表达式、指针、函数、数组、字符串、结构和联合等几乎所有重要的C编程话题。书中给出了很多编程技巧和提示,每章后面有针对性很强的练习,附录部分则给出了部分练习的解答。
《C和指针》适合C语言初学者和初级C程序员阅读,也可作为计算机专业学生学习C语言的参考。
《C专家编程》《C专家编程》展示了优秀的C程序员所使用的编码技巧,并专门开辟了一章对C的基础知识进行了介绍。
《C专家编程》对C的历史、语言特性、声明、数组、指针、链接、运行时、内存以及如何进一步学习C等问题进行了细致的讲解和深入的分析。本书撷取几十个实例进行讲解,对C程序员具有非常高的实用价值。
《C专家编程》可以帮助有一定经验的C程序员成为C编程方面的专家;对于C语言功底深厚的程序员,本书可以帮助他们站在C的高度了解和学习C。
《C 陷阱与缺陷》《C陷阱与缺陷》作者以自己1985年在贝尔实验室时发表的一篇论文为基础,结合自己的工作经验将这篇论文扩展成对C程序员具有珍贵价值的经典著作。本书的出发点不是批判C语言,而是要帮助C程序员绕过编程过程中的陷阱和障碍。
《C陷阱与缺陷》分为8章,分别从词法陷阱、语法陷阱、语义陷阱、链接、库函数、预处理器、可一致性缺陷等几个方面分析了C编程中可能遇到的问题。*后,作者用一章的篇幅给出了若干具有实用价值的建议。
《C陷阱与缺陷》适合有一定经验的C程序员阅读学习,即便你是C编程高手,本书也应该成为你的案头必备图书。
關於作者:
《C和指针》
Kenneth Reek是美国Rochester工业学院计算机系教授,有几十年年的C编程教学经验,并凭借《C和指针》一书获得了ACUU的高度评价。

《C专家编程》
Peter van der Linden,Sun公司编译器和OS核心开发团队成员,世界知名的专家级C程序员,拥有多年的C开发实战经验,对CC语言有深入理解。
《C 陷阱与缺陷》
Andrew Koenig,AT&T大规模程序研发部(前贝尔实验室)成员。他从1986年开始从事C语言的研究,1977年加入贝尔实验室。他编写了一些早期的类库,并在1988年组织召开了第一个具有相当规模的C会议。在ISOANSI C委员会成立的1989年,他就加入了该委员会,并一直担任项目编辑。他已经发表了100多篇C方面的论文,并在Addsion-Wesley出版了C Traps and Pitfalls 一书(中文版名为《C缺陷与陷阱》,由人民邮电出版社出版),还应邀到世界各地演讲。
Anderw Koenig不仅有着多年的C开发、研究和教学经验,而且还亲身参与了C的演化和变革,对C的变化和发展产生了重要的影响。
目錄
《C和指针》
第 1章 快速上手 1
1.1 简介 1
1.1.1 空白和注释 4
1.1.2 预处理指令 4
1.1.3 main函数 5
1.1.4 read_column_numbers函数 8
1.1.5 rearrange函数 12
1.2 补充说明 14
1.3 编译 14
1.4 总结 15
1.5 警告的总结 15
1.6 编程提示的总结 15
1.7 问题 16
1.8 编程练习 16
第 2章 基本概念 19
2.1 环境 19
2.1.1 翻译 19
2.1.2 执行 21
2.2 词法规则 21
2.2.1 字符 22
2.2.2 注释 23
2.2.3 自由形式的源代码 23
2.2.4 标识符 24
2.2.5 程序的形式 24
2.3 程序风格 25
2.4 总结 26
2.5 警告的总结 26
2.6 编程提示的总结 26
2.7 问题 27
2.8 编程练习 28
第3章 数据 29
3.1 基本数据类型 29
3.1.1 整型家族 29
3.1.2 浮点类型 32
3.1.3 指针 33
3.2 基本声明 35
3.2.1 初始化 35
3.2.2 声明简单数组 36
3.2.3 声明指针 36
3.2.4 隐式声明 37
3.3 typedef 38
3.4 常量 38
3.5 作用域 39
3.5.1 代码块作用域 40
3.5.2 文件作用域 41
3.5.3 原型作用域 41
3.5.4 函数作用域 41
3.6 链接属性 41
3.7 存储类型 43
3.8 static关键字 44
3.9 作用域、存储类型示例 45
3.10 总结 46
3.11 警告的总结 47
3.12 编程提示的总结 47
3.13 问题 48
第4章 语句 51
4.1 空语句 51
4.2 表达式语句 51
4.3 代码块 52
4.4 if语句 52
4.5 while语句 53
4.5.1 break和continue语句 54
4.5.2 while语句的执行过程 54
4.6 for语句 55
4.7 do语句 56
4.8 switch语句 57
4.8.1 switch中的break语句 58
4.8.2 default子句 59
4.8.3 switch语句的执行过程 59
4.9 goto语句 60
4.10 总结 61
4.11 警告的总结 62
4.12 编程提示的总结 62
4.13 问题 62
4.14 编程练习 63
第5章 操作符和表达式 67
5.1 操作符 67
5.1.1 算术操作符 67
5.1.2 移位操作符 67
5.1.3 位操作符 69
5.1.4 赋值操作符 70
5.1.5 单目操作符 72
5.1.6 关系操作符 73
5.1.7 逻辑操作符 74
5.1.8 条件操作符 75
5.1.9 逗号操作符 76
5.1.10 下标引用、函数调用和结构成员 77
5.2 布尔值 78
5.3 左值和右值 79
5.4 表达式求值 80
5.4.1 隐式类型转换 80
5.4.2 算术转换 80
5.4.3 操作符的属性 81
5.4.4 优先级和求值的顺序 82
5.5 总结 85
5.6 警告的总结 86
5.7 编程提示的总结 86
5.8 问题 86
5.9 编程练习 88
第6章 指针 91
6.1 内存和地址 91
6.2 值和类型 92
6.3 指针变量的内容 93
6.4 间接访问操作符 94
6.5 未初始化和非法的指针 95
6.6 NULL指针 96
6.7 指针、间接访问和左值 97
6.8 指针、间接访问和变量 97
6.9 指针常量 98
6.10 指针的指针 98
6.11 指针表达式 99
6.12 实例 104
6.13 指针运算 107
6.13.1 算术运算 108
6.13.2 关系运算 110
6.14 总结 111
6.15 警告的总结 112
6.16 编程提示的总结 112
6.17 问题 112
6.18 编程练习 115
第7章 函数 117
7.1 函数定义 117
7.2 函数声明 119
7.2.1 原型 119
7.2.2 函数的缺省认定 121
7.3 函数的参数 122
7.4 ADT和黑盒 124
7.5 递归 127
7.5.1 追踪递归函数 128
7.5.2 递归与迭代 131
7.6 可变参数列表 134
7.6.1 stdarg宏 135
7.6.2 可变参数的限制 135
7.7 总结 136
7.8 警告的总结 137
7.9 编程提示的总结 137
7.10 问题 138
7.11 编程练习 138
第8章 数组 141
8.1 一维数组 141
8.1.1 数组名 141
8.1.2 下标引用 142
8.1.3 指针与下标 144
8.1.4 指针的效率 145
8.1.5 数组和指针 150
8.1.6 作为函数参数的数组名 150
8.1.7 声明数组参数 152
8.1.8 初始化 152
8.1.9 不完整的初始化 153
8.1.10 自动计算数组长度 153
8.1.11 字符数组的初始化 153
8.2 多维数组 154
8.2.1 存储顺序 154
8.2.2 数组名 155
8.2.3 下标 156
8.2.4 指向数组的指针 158
8.2.5 作为函数参数的多维数组 159
8.2.6 初始化 160
8.2.7 数组长度自动计算 162
8.3 指针数组 162
8.4 总结 165
8.5 警告的总结 166
8.6 编程提示的总结 166
8.7 问题 166
8.8 编程练习 170
第9章 字符串、字符和字节 175
9.1 字符串基础 175
9.2 字符串长度 175
9.3 不受限制的字符串函数 177
9.3.1 复制字符串 177
9.3.2 连接字符串 178
9.3.3 函数的返回值 178
9.3.4 字符串比较 178
9.4 长度受限的字符串函数 179
9.5 字符串查找基础 180
9.5.1 查找一个字符 180
9.5.2 查找任何几个字符 181
9.5.3 查找一个子串 181
9.6 高级字符串查找 182
9.6.1 查找一个字符串前缀 182
9.6.2 查找标记 182
9.7 错误信息 183
9.8 字符操作 184
9.8.1 字符分类 184
9.8.2 字符转换 184
9.9 内存操作 185
9.10 总结 186
9.11 警告的总结 187
9.12 编程提示的总结 187
9.13 问题 187
9.14 编程练习 188
第 10章 结构和联合 195
10.1 结构基础知识 195
10.1.1 结构声明 195
10.1.2 结构成员 197
10.1.3 结构成员的直接访问 197
10.1.4 结构成员的间接访问 198
10.1.5 结构的自引用 198
10.1.6 不完整的声明 199
10.1.7 结构的初始化 199
10.2 结构、指针和成员 200
10.2.1 访问指针 201
10.2.2 访问结构 201
10.2.3 访问结构成员 202
10.2.4 访问嵌套的结构 203
10.2.5 访问指针成员 204
10.3 结构的存储分配 205
10.4 作为函数参数的结构 206
10.5 位段 209
10.6 联合 211
10.6.1 变体记录 212
10.6.2 联合的初始化 213
10.7 总结 214
10.8 警告的总结 214
10.9 编程提示的总结 214
10.10 问题 215
10.11 编程练习 217
第 11章 动态内存分配 221
11.1 为什么使用动态内存分配 221
11.2 malloc和free 221
11.3 calloc和realloc 222
11.4 使用动态分配的内存 223
11.5 常见的动态内存错误 223
11.6 内存分配实例 226
11.7 总结 231
11.8 警告的总结 232
11.9 编程提示的总结 232
11.10 问题 232
11.11 编程练习 233
第 12章 使用结构和指针 235
12.1 链表 235
12.2 单链表 235
12.2.1 在单链表中插入 236
12.2.2 其他链表操作 245
12.3 双链表 245
12.3.1 在双链表中插入 246
12.3.2 其他链表操作 253
12.4 总结 253
12.5 警告的总结 254
12.6 编程提示的总结 254
12.7 问题 254
12.8 编程练习 255
第 13章 高级指针话题 257
13.1 进一步探讨指向指针的指针 257
13.2 高级声明 258
13.3 函数指针 260
13.3.1 回调函数 261
13.3.2 转移表 263
13.4 命令行参数 265
13.4.1 传递命令行参数 265
13.4.2 处理命令行参数 266
13.5 字符串常量 269
13.6 总结 271
13.7 警告的总结 272
13.8 编程提示的总结 272
13.9 问题 272
13.10 编程练习 275
第 14章 预处理器 279
14.1 预定义符号 279
14.2 #define 279
14.2.1 宏 281
14.2.2 #define替换 282
14.2.3 宏与函数 283
14.2.4 带副作用的宏参数 284
14.2.5 命名约定 285
14.2.6 #undef 285
14.2.7 命令行定义 285
14.3 条件编译 286
14.3.1 是否被定义 287
14.3.2 嵌套指令 288
14.4 文件包含 288
14.4.1 函数库文件包含 289
14.4.2 本地文件包含 289
14.4.3 嵌套文件包含 290
14.5 其他指令 291
14.6 总结 292
14.7 警告的总结 293
14.8 编程提示的总结 293
14.9 问题 293
14.10 编程练习 295
第 15章 输入输出函数 297
15.1 错误报告 297
15.2 终止执行 298
15.3 标准IO函数库 298
15.4 ANSI IO概念 299
15.4.1 流 299
15.4.2 文件 300
15.4.3 标准IO常量 300
15.5 流IO总览 301
15.6 打开流 302
15.7 关闭流 303
15.8 字符IO 304
15.8.1 字符IO宏 305
15.8.2 撤销字符IO 305
15.9 未格式化的行IO 306
15.10 格式化的行IO 308
15.10.1 scanf家族 308
15.10.2 scanf格式代码 308
15.10.3 printf家族 312
15.10.4 printf格式代码 312
15.11 二进制IO 316
15.12 刷新和定位函数 316
15.13 改变缓冲方式 318
15.14 流错误函数 319
15.15 临时文件 319
15.16 文件操纵函数 319
15.17 总结 320
15.18 警告的总结 321
15.19 编程提示的总结 322
15.20 问题 322
15.21 编程练习 323
第 16章 标准函数库 327
16.1 整型函数 327
16.1.1 算术  327
16.1.2 随机数 328
16.1.3 字符串转换  329
16.2 浮点型函数 329
16.2.1 三角函数  330
16.2.2 双曲函数  330
16.2.3 对数和指数函数  330
16.2.4 浮点表示形式  331
16.2.5 幂  331
16.2.6 底数、顶数、绝对值和余数  331
16.2.7 字符串转换  332
16.3 日期和时间函数 332
16.3.1 处理器时间  332
16.3.2 当天时间  332
16.3.3 日期和时间的转换  333
16.4 非本地跳转  335
16.4.1 实例 336
16.4.2 何时使用非本地跳转 337
16.5 信号 338
16.5.1 信号名  338
16.5.2 处理信号  339
16.5.3 信号处理函数 340
16.6 打印可变参数列表  341
16.7 执行环境 342
16.7.1 终止执行  342
16.7.2 断言 342
16.7.3 环境  343
16.7.4 执行系统命令  343
16.7.5 排序和查找 344
16.8 locale 346
16.8.1 数值和货币格式  346
16.8.2 字符串和locale  348
16.8.3 改变locale的效果 349
16.9 总结 349
16.10 警告的总结 350
16.11 编程提示的总结 351
16.12 问题 351
16.13 编程练习 352
第 17章 经典抽象数据类型 355
17.1 内存分配 355
17.2 堆栈 355
17.2.1 堆栈接口 356
17.2.2 实现堆栈 356
17.3 队列 364
17.3.1 队列接口 364
17.3.2 实现队列 365
17.4 树 369
17.4.1 在二叉搜索树中插入 370
17.4.2 从二叉搜索树删除节点 370
17.4.3 在二叉搜索树中查找 371
17.4.4 树的遍历 371
17.4.5 二叉搜索树接口 372
17.4.6 实现二叉搜索树 373
17.5 实现的改进 379
17.5.1 拥有超过一个的堆栈 379
17.5.2 拥有超过一种的类型 380
17.5.3 名字冲突 380
17.5.4 标准函数库的ADT 381
17.6 总结 383
17.7 警告的总结 384
17.8 编程提示的总结 384
17.9 问题 384
17.10 编程练习 385
第 18章 运行时环境 387
18.1 判断运行时环境 387
18.1.1 测试程序 387
18.1.2 静态变量和初始化 390
18.1.3 堆栈帧 391
18.1.4 寄存器变量 391
18.1.5 外部标识符的长度 393
18.1.6 判断堆栈帧布局 393
18.1.7 表达式的副作用 398
18.2 C和汇编语言的接口 399
18.3 运行时效率 400
18.4 总结 402
18.5 警告的总结 403
18.6 编程提示的总结 403
18.7 问题 403
18.8 编程练习 403
附录 部分问题和编程练习的答案 405
《C专家编程》
第 1章 C:穿越时空的迷雾 1
1.1 C语言的史前阶段 1
1.2 C语言的早期体验 4
1.3 标准IO库和C预处理器 5
1.4 K&R C 8
1.5 今日之ANSI C 10
1.6 它很棒,但它符合标准吗 12
1.7 编译限制 14
1.8 ANSI C标准的结构 15
1.9 阅读ANSI C标准,寻找乐趣和裨益 18
1.10 安静的改变究竟有多少安静 22
1.11 轻松一下由编译器定义的Pragmas效果 25
第 2章 这不是Bug,而是语言特性 27
2.1 这关语言特性何事,在Fortran里这就是Bug呀 27
2.2 多做之过 29
2.3 误做之过 36
2.4 少做之过 43
2.5 轻松一下有些特性确实就是Bug 51
第3章 分析C语言的声明 53
3.1 只有编译器才会喜欢的语法 54
3.2 声明是如何形成的 56
3.3 优先级规则 61
3.4 通过图表分析C语言的声明 63
3.5 typedef可以成为你的朋友 65
3.6 typedef int x[10]和#define x int[10]的区别 66
3.7 typedef struct foo{ ... foo; }的含义 67
3.8 理解所有分析过程的代码段 69
3.9 轻松一下驱动物理实体的软件 71
第4章 令人震惊的事实:数组和指针并不相同 79
4.1 数组并非指针 79
4.2 我的代码为什么无法运行 79
4.3 什么是声明,什么是定义 80
4.4 使声明与定义相匹配 84
4.5 数组和指针的其他区别 84
4.6 轻松一下回文的乐趣 85
第5章 对链接的思考 89
5.1 函数库、链接和载入 89
5.2 动态链接的优点 92
5.3 函数库链接的5个特殊秘密 95
5.4 警惕Interpositioning 99
5.5 产生链接器报告文件 104
5.6 轻松一下看看谁在说话:挑战Turing测验 105
第6章 运动的诗章:运行时数据结构 111
6.1 a.out及其传说 112
6.2 段 113
6.3 操作系统在a.out文件里干了些什么 115
6.4 C语言运行时系统在a.out里干了些什么 117
6.5 当函数被调用时发生了什么:过程活动记录 119
6.6 auto和static关键字 123
6.7 控制线程 124
6.8 setjmp和longjmp 124
6.9 UNIX中的堆栈段 126
6.10 MS-DOS中的堆栈段 126
6.11 有用的C语言工具 127
6.12 轻松一下卡耐基梅隆大学的编程难题 130
6.13 只适用于高级学员阅读的材料 132
第7章 对内存的思考 133
7.1 Intel 80x86系列 133
7.2 Intel 80x86内存模型以及它的工作原理 137
7.3 虚拟内存 141
7.4 cache存储器 144
7.5 数据段和堆 148
7.6 内存泄漏 149
7.7 总线错误 153
7.8 轻松一下Thing King和页面游戏 159
第8章 为什么程序员无法分清万圣节和圣诞节 163
8.1 Portzebie度量衡系统 163
8.2 根据位模式构筑图形 164
8.3 在等待时类型发生了变化 166
8.4 原型之痛 168
8.5 原型在什么地方会失败 170
8.6 不需要按回车键就能得到一个字符 173
8.7 用C语言实现有限状态机 177
8.8 软件比硬件更困难 178
8.9 如何进行强制类型转换,为何要进行类型强制转换 181
8.10 轻松一下国际C语言混乱代码大赛 183
第9章 再论数组 193
9.1 什么时候数组与指针相同 193
9.2 为什么会发生混淆 194
9.3 为什么C语言把数组形参当作指针 199
9.4 数组片段的下标 202
9.5 数组和指针可交换性的总结 203
9.6 C语言的多维数组 203
9.7 轻松一下软件硬件平衡 209
第 10章 再论指针 213
10.1 多维数组的内存布局 213
10.2 指针数组就是Iliffe向量 214
10.3 在锯齿状数组上使用指针 217
10.4 向函数传递一个一维数组 220
10.5 使用指针向函数传递一个多维数组 221
10.6 使用指针从函数返回一个数组 224
10.7 使用指针创建和使用动态数组 226
10.8 轻松一下程序检验的限制 231
第 11章 你懂得C,所以C不在话下 235
11.1 初识OOP 235
11.2 抽象取事物的本质特性 237
11.3 封装把相关的类型、数据和函数组合在一起 238
11.4 展示一些类用户定义类型享有和预定义类型一样的权限 239
11.5 访问控制 240
11.6 声明 241
11.7 如何调用成员函数 243
11.8 继承复用已经定义的操作 245
11.9 多重继承从两个或更多的基类派生 249
11.10 重载作用于不同类型的同一操作具有相同的名字 250
11.11 C如何进行操作符重载 250
11.12 C的输入输出(IO) 251
11.13 多态运行时绑定 252
11.14 解释 253
11.15 C如何表现多态 254
11.16 新奇玩意儿多态 255
11.17 C的其他要点 256
11.18 如果我的目标是那里,我不会从这里起步 257
11.19 它或许过于复杂,但却是唯一可行的方案 259
11.20 轻松一下死亡计算机协会 263
11.21 更多阅读材料 264
附录A 程序员工作面试的秘密 265
《C 陷阱与缺陷》
第0章 导读 1
第 1章 词法陷阱 5
1.1 =不同于== 6
1.2 & 和 | 不同于&& 和 || 8
1.3 词法分析中的贪心法 8
1.4 整型常量 10
1.5 字符与字符串 11
第 2章 语法陷阱 15
2.1 理解函数声明 15
2.2 运算符的优先级问题 19
2.3 注意作为语句结束标志的分号 24
2.4 switch语句 26
2.5 函数调用 28
2.6 悬挂else引发的问题 28
第3章 语义陷阱 33
3.1 指针与数组 33
3.2 非数组的指针 39
3.3 作为参数的数组声明 41
3.4 避免举隅法 43
3.5 空指针并非空字符串 44
3.6 边界计算与不对称边界 45
3.7 求值顺序 57
3.8 运算符&&、|| 和 ! 59
3.9 整数溢出 61
3.10 为函数main提供返回值 62
第4章 链接 65
4.1 什么是链接器 65
4.2 声明与定义 67
4.3 命名冲突与static修饰符 69
4.4 形参、实参与返回值 70
4.5 检查外部类型 77
4.6 头文件 80
第5章 库函数 83
5.1 返回整数的getchar函数 84
5.2 更新顺序文件 85
5.3 缓冲输出与内存分配 86
5.4 使用errno检测错误 88
5.5 库函数signal 89
第6章 预处理器 93
6.1 不能忽视宏定义中的空格 94
6.2 宏并不是函数 94
6.3 宏并不是语句 99
6.4 宏并不是类型定义 101
第7章 可移植性缺陷 103
7.1 应对C语言标准变更 104
7.2 标识符名称的限制 106
7.3 整数的大小 107
7.4 字符是有符号整数还是无符号整数 108
7.5 移位运算符 109
7.6 内存位置0 110
7.7 除法运算时发生的截断 111
7.8 随机数的大小 113
7.9 大小写转换 113
7.10 首先释放,然后重新分配 115
7.11 可移植性问题的一个例子 116
第8章 建议与答案 123
8.1 建议 124
8.2 答案 128
附录A printf、varargs与stdarg 147
附录B Koenig和Moo夫妇访谈 169

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 台灣用户 | 香港/海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.