作者:
[美] Peter Van Der Linden
出版社: 人民邮电出版社
原作名: Expert C Programming: Deep C Secrets
译者: 徐波
出版年: 2008-2
页数: 291
定价: 45.00元
装帧: 平装
丛书: C和C++经典著作
ISBN: 9787115171801
出版社: 人民邮电出版社
原作名: Expert C Programming: Deep C Secrets
译者: 徐波
出版年: 2008-2
页数: 291
定价: 45.00元
装帧: 平装
丛书: C和C++经典著作
ISBN: 9787115171801
内容简介 · · · · · ·
《C专家编程》展示了最优秀的C程序员所使用的编码技巧,并专门开辟了一章对C++的基础知识进行了介绍。
书中C的历史、语言特性、声明、数组、指针、链接、运行时、内存以及如何进一步学习C++等问题进行了细致的讲解和深入的分析。全书撷取几十个实例进行讲解,对C程序员具有非常高的实用价值。
本书可以帮助有一定经验的C程序员成为C编程方面的专家,对于具备相当的C语言基础的程序员,本书可以帮助他们站在C的高度了解和学习C++。
C专家编程的创作者
· · · · · ·
-
徐波 译者
目录 · · · · · ·
第1章 C:穿越时空的迷雾
1.1 C语言的史前阶段
1.2 C语言的早期体验
1.3 标准I/O库和C预处理器
1.4 K&R C
1.5 今日之ANSI C
1.6 它很棒,但它符合标准吗
1.7 编译限制
1.8 ANSI C标准的结构
1.9 阅读ANSI C标准,寻找乐趣和裨益
1.10 “安静的改变”究竟有多少安静
1.11 轻松一下——由编译器定义的Pragmas效果
第2章 这不是Bug,而是语言特性
2.1 这关语言特性何事,在Fortran里这就是Bug呀
2.2 多做之过
2.3 误做之过
2.4 少做之过
2.5 轻松一下——有些特性确实就是Bug
2.6 参考文献
第3章 分析C语言的声明
3.1 只有编译器才会喜欢的语法
3.2 声明是如何形成的
3.3 优先级规则
3.4 通过图表分析C语言的声明
3.5 typedef可以成为你的朋友
3.6 typedef int x[10]和#define x int[10]的区别
3.7 typedef struct foo{ ... foo; }的含义
3.8 理解所有分析过程的代码段
3.9 轻松一下——驱动物理实体的软件
第4章 令人震惊的事实:数组和指针并不相同
4.1 数组并非指针
4.2 我的代码为什么无法运行
4.3 什么是声明,什么是定义
4.4 使声明与定义相匹配
4.5 数组和指针的其他区别
4.6 轻松一下——回文的乐趣
第5章 对链接的思考
5.1 函数库、链接和载入
5.2 动态链接的优点
5.3 函数库链接的5个特殊秘密
5.4 警惕Interpositioning
5.5 产生链接器报告文件
5.6 轻松一下——看看谁在说话:挑战Turing测验
第6章 运动的诗章:运行时数据结构
6.1 a.out及其传说
6.2 段
6.3 操作系统在a.out文件里干了些什么
6.4 C语言运行时系统在a.out里干了些什么
6.5 当函数被调用时发生了什么:过程活动记录
6.6 auto和static关键字
6.7 控制线程
6.8 setjmp和longjmp
6.9 UNIX中的堆栈段
6.10 MS-DOS中的堆栈段
6.11 有用的C语言工具
6.12 轻松一下——卡耐基-梅隆大学的编程难题
6.13 只适用于高级学员阅读的材料
第7章 对内存的思考
7.1 Intel 80x86系列
7.2 Intel 80x86内存模型以及它的工作原理
7.3 虚拟内存
7.4 Cache存储器
7.5 数据段和堆
7.6 内存泄漏
7.7 总线错误
7.8 轻松一下——“Thing King”和“页面游戏”
第8章 为什么程序员无法分清万圣节和圣诞节
8.1 Portzebie度量衡系统
8.2 根据位模式构筑图形
8.3 在等待时类型发生了变化
8.4 原型之痛
8.5 原型在什么地方会失败
8.6 不需要按回车键就能得到一个字符
8.7 用C语言实现有限状态机
8.8 软件比硬件更困难
8.9 如何进行强制类型转换,为何要进行类型强制转换
8.10 轻松一下——国际C语言混乱代码大赛
第9章 再论数组
9.1 什么时候数组与指针相同
9.2 为什么会发生混淆
9.3 为什么C语言把数组形参当作指针
9.4 数组片段的下标
9.5 数组和指针可交换性的总结
9.6 C语言的多维数组
9.7 轻松一下——软件/硬件平衡
第10章 再论指针
10.1 多维数组的内存布局
10.2 指针数组就是Iliffe向量
10.3 在锯齿状数组上使用指针
10.4 向函数传递一个一维数组
10.5 使用指针向函数传递一个多维数组
10.6 使用指针从函数返回一个数组
10.7 使用指针创建和使用动态数组
10.8 轻松一下——程序检验的限制
第11章 你懂得C,所以C++不在话下
11.1 初识OOP
11.2 抽象——取事物的本质特性
11.3 封装——把相关的类型、数据和函数组合在一起
11.4 展示一些类——用户定义类型享有和预定义类型一样的权限
11.5 访问控制
11.6 声明
11.7 如何调用成员函数
11.8 继承——复用已经定义的操作
11.9 多重继承——从两个或更多的基类派生
11.10 重载——作用于不同类型的同一操作具有相同的名字
11.11 C++如何进行操作符重载
11.12 C++的输入/输出(I/O)
11.13 多态——运行时绑定
11.14 解释
11.15 C++如何表现多态
11.16 新奇玩意——多态
11.17 C++的其他要点
11.18 如果我的目标是那里,我不会从这里起步
11.19 它或许过于复杂,但却是惟一可行的方案
11.20 轻松一下——死亡计算机协会
11.21 更多阅读材料
附录A 程序员工作面试的秘密
附录B 术语表
· · · · · · (收起)
1.1 C语言的史前阶段
1.2 C语言的早期体验
1.3 标准I/O库和C预处理器
1.4 K&R C
1.5 今日之ANSI C
1.6 它很棒,但它符合标准吗
1.7 编译限制
1.8 ANSI C标准的结构
1.9 阅读ANSI C标准,寻找乐趣和裨益
1.10 “安静的改变”究竟有多少安静
1.11 轻松一下——由编译器定义的Pragmas效果
第2章 这不是Bug,而是语言特性
2.1 这关语言特性何事,在Fortran里这就是Bug呀
2.2 多做之过
2.3 误做之过
2.4 少做之过
2.5 轻松一下——有些特性确实就是Bug
2.6 参考文献
第3章 分析C语言的声明
3.1 只有编译器才会喜欢的语法
3.2 声明是如何形成的
3.3 优先级规则
3.4 通过图表分析C语言的声明
3.5 typedef可以成为你的朋友
3.6 typedef int x[10]和#define x int[10]的区别
3.7 typedef struct foo{ ... foo; }的含义
3.8 理解所有分析过程的代码段
3.9 轻松一下——驱动物理实体的软件
第4章 令人震惊的事实:数组和指针并不相同
4.1 数组并非指针
4.2 我的代码为什么无法运行
4.3 什么是声明,什么是定义
4.4 使声明与定义相匹配
4.5 数组和指针的其他区别
4.6 轻松一下——回文的乐趣
第5章 对链接的思考
5.1 函数库、链接和载入
5.2 动态链接的优点
5.3 函数库链接的5个特殊秘密
5.4 警惕Interpositioning
5.5 产生链接器报告文件
5.6 轻松一下——看看谁在说话:挑战Turing测验
第6章 运动的诗章:运行时数据结构
6.1 a.out及其传说
6.2 段
6.3 操作系统在a.out文件里干了些什么
6.4 C语言运行时系统在a.out里干了些什么
6.5 当函数被调用时发生了什么:过程活动记录
6.6 auto和static关键字
6.7 控制线程
6.8 setjmp和longjmp
6.9 UNIX中的堆栈段
6.10 MS-DOS中的堆栈段
6.11 有用的C语言工具
6.12 轻松一下——卡耐基-梅隆大学的编程难题
6.13 只适用于高级学员阅读的材料
第7章 对内存的思考
7.1 Intel 80x86系列
7.2 Intel 80x86内存模型以及它的工作原理
7.3 虚拟内存
7.4 Cache存储器
7.5 数据段和堆
7.6 内存泄漏
7.7 总线错误
7.8 轻松一下——“Thing King”和“页面游戏”
第8章 为什么程序员无法分清万圣节和圣诞节
8.1 Portzebie度量衡系统
8.2 根据位模式构筑图形
8.3 在等待时类型发生了变化
8.4 原型之痛
8.5 原型在什么地方会失败
8.6 不需要按回车键就能得到一个字符
8.7 用C语言实现有限状态机
8.8 软件比硬件更困难
8.9 如何进行强制类型转换,为何要进行类型强制转换
8.10 轻松一下——国际C语言混乱代码大赛
第9章 再论数组
9.1 什么时候数组与指针相同
9.2 为什么会发生混淆
9.3 为什么C语言把数组形参当作指针
9.4 数组片段的下标
9.5 数组和指针可交换性的总结
9.6 C语言的多维数组
9.7 轻松一下——软件/硬件平衡
第10章 再论指针
10.1 多维数组的内存布局
10.2 指针数组就是Iliffe向量
10.3 在锯齿状数组上使用指针
10.4 向函数传递一个一维数组
10.5 使用指针向函数传递一个多维数组
10.6 使用指针从函数返回一个数组
10.7 使用指针创建和使用动态数组
10.8 轻松一下——程序检验的限制
第11章 你懂得C,所以C++不在话下
11.1 初识OOP
11.2 抽象——取事物的本质特性
11.3 封装——把相关的类型、数据和函数组合在一起
11.4 展示一些类——用户定义类型享有和预定义类型一样的权限
11.5 访问控制
11.6 声明
11.7 如何调用成员函数
11.8 继承——复用已经定义的操作
11.9 多重继承——从两个或更多的基类派生
11.10 重载——作用于不同类型的同一操作具有相同的名字
11.11 C++如何进行操作符重载
11.12 C++的输入/输出(I/O)
11.13 多态——运行时绑定
11.14 解释
11.15 C++如何表现多态
11.16 新奇玩意——多态
11.17 C++的其他要点
11.18 如果我的目标是那里,我不会从这里起步
11.19 它或许过于复杂,但却是惟一可行的方案
11.20 轻松一下——死亡计算机协会
11.21 更多阅读材料
附录A 程序员工作面试的秘密
附录B 术语表
· · · · · · (收起)
丛书信息
· · · · · ·
C和C++经典著作(共10册),
这套丛书还有
《C和指针》《C++沉思录》《C和指针》《C++Templates中文版》《C++沉思录》
等
。
喜欢读"C专家编程"的人也喜欢的电子书 · · · · · ·
支持 Web、iPhone、iPad、Android 阅读器
喜欢读"C专家编程"的人也喜欢 · · · · · ·
- C陷阱与缺陷 8.8
- C和指针 9.1
- UNIX网络编程 9.4
- 深入理解计算机系统(原书第2版) 9.7
- 代码大全(第2版) 9.3
- Effective C++ 9.5
- 程序设计实践 9.1
- C程序设计语言 9.4
- C++沉思录 8.6
C专家编程的书评 · · · · · · ( 全部 41 条 )
C Expert Programming, Deep Enough!!
看这本书是源于CSDN上华为的一个面试题, file A;文件A int a[10]; ... file B;文件B extern int *a; ... 问是否编译成功,如果不成功会如何修改? 编译是成功的,当然,如果这样定义,那么主要应该是编译器在链接阶段的问题,而不是编译的问题。 当时在CSDN的论坛上,就有人...
(展开)
> 更多书评 41篇
论坛 · · · · · ·
请问读过中文版的兄弟,这本书翻译的怎么样啊? | 来自rteta | 3 回应 | 2016-07-07 04:13:20 |
翻译的不是很好 | 来自亲爱的老菲比 | 4 回应 | 2016-07-07 04:11:52 |
徐波何许人物,这厮何德何能来翻译这本经典 | 来自流走的鱼 | 7 回应 | 2016-07-07 04:10:21 |
这些书现在都没卖的. | 来自pro21ms4 | 11 回应 | 2012-08-19 10:31:30 |
非常好的一本书 | 来自小舟 | 2010-10-05 22:50:57 |
> 浏览更多话题
这本书的其他版本 · · · · · · ( 全部6 )
-
Prentice Hall (1994)9.5分 175人读过
-
人民邮电出版社 (2002)9.1分 662人读过
-
人民邮电出版社 (2020)9.8分 20人读过
-
人民邮电出版社 (2013)暂无评分 8人读过
在哪儿借这本书 · · · · · ·
以下书单推荐 · · · · · · ( 全部 )
- 豆瓣读书评分9分以上榜单 (无人的冬夜)
- 书单 | 千评9分书 (Sheryl)
- C语言书籍 (sagasw)
- 编程C语言,Python等类书籍+知乎话题 (IVAN)
- 闲着没事读读书(四) (鹿小羽)
谁读这本书? · · · · · ·
二手市场
· · · · · ·
订阅关于C专家编程的评论:
feed: rss 2.0
3 有用 ggarlic 2016-02-29 17:45:14
1,各种黑历史真好看,八卦之火熊熊燃烧 2,讲了各种c的缺陷,推荐go用户好好体验,很多都在go里做了修正 3,内存跟指针那几章讲得很透彻
0 有用 LipingTaBaBa 2008-07-20 19:24:46
作者太有趣了!!!
0 有用 Tariel 2009-02-04 16:52:07
书很好. 翻译一般. 校对不负责任.
4 有用 ଲ 2013-07-29 09:00:12
指针那三章需要细读。
0 有用 豆友1094556 2013-08-12 11:22:24
略话痨。
0 有用 符号 2024-03-18 19:02:12 上海
讲清楚了很多关键的知识点,尤其是与编译器的关系,是很多书中没有的。还连带讲了C语言许多历史。虽然部分内容已经过时,但还是推荐每一位C语言开发者阅读此书
0 有用 港岛妹妹在哪里 2024-03-17 16:31:43 广东
可能真的不太适合现在的我读,感觉很多内容都显得过分晦涩难懂了。
0 有用 进击的杀马特 2024-02-02 18:46:21 江苏
1,很底层,深入到c编译器和操作系统层面。非常值得一读 2,但没特别的耐心读,一方面源于这部分知识对于我当前不是重点,另一方面看起来太吃力了。可能只消化了一半
0 有用 LSD2018 2024-01-25 13:08:36 重庆
居然不知道声明和定义的区别!! 不过左右值的地方不适合c++
0 有用 MayCrew 2024-01-07 17:46:41 北京
非常棒,风趣幽默的行文。作者嘴碎无比,非常有意思