首页
编程语言与程序设计
C陷阱与缺陷
C陷阱与缺陷
书籍作者:Andrew Koenig
ISBN:9787115171795
书籍语言:简体中文
连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3
下载次数:2061
创建日期:2021-02-14
发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介
《C和C++经典著作:C陷阱与缺陷》适合有一定经验的C程序员阅读学习,即便你是C编程高手,《C和C++经典著作:C陷阱与缺陷》也应该成为你的案头必备书籍。作者以自己1985年在Bell实验室时发表的一篇论文为基础,结合自己的工作经验扩展成为这本对C程序员具有珍贵价值的经典著作。写作《C和C++经典著作:C陷阱与缺陷》的出发点不是要批判C语言,而是要帮助C程序员绕过编程过程中的陷阱和障碍。《C和C++经典著作:C陷阱与缺陷》分为8章,分别从词法分析、语法语义、连接、库函数、预处理器、可移植性缺陷等几个方面分析了C编程中可能遇到的问题。结尾,作者用一章的篇幅给出了若干具有实用价值的建议。
作者简介
Andrew Koenig,AT&T大规模程序研发部(莉贝尔实验室)成员。他从1 986年开始从事C语言的研究,1977年加入贝尔实验室。在1989年ISO/ANSI C++委员会成立时,他就加入了该委员会,并一直担任项目编辑;他还是《Rumirlatio rls on C++》(C++沉思录)、《CTraps and Pitfalls》的作者。
编辑推荐
AndrewKoenig自己在Bell实验室时发表的论文为基础,结合自己的工作经验扩展成这本对C程序员具有珍贵价值的经典著作。写作《C和C++经典著作:C陷阱与缺陷》的出发点不是要批判C语言,而是要帮助C程序员绕过编程过程中的陷阱和障碍。 《C和C++经典著作:C陷阱与缺陷》所揭示的知识,至少能够帮助你减少C代码和初级C++代码中90%的Bug。
目录
第0章 导读 第1章 词法“陷阱” 1.1 =不同于== 1.2 &和|不同于&&和|| 1.3 词法分析中的“贪心法” 1.4 整型常量 1.5 字符与字符串 第2章 语法“陷阱” 2.1 理解函数声明 2.2 运算符的优先级问题 2.3 注意作为语句结束标志的分号 2.4 switch语句 2.5 函数调用 2.6 “悬挂”else引发的问题 第3章 语义“陷阱” 3.1 指针与数组 3.2 非数组的指针 3.3 作为参数的数组声明 3.4 避免“举隅法” 3.5 空指针并非空字符串 3.6 边界计算与不对称边界 3.7 求值顺序 3.8 运算符&&、||和! 3.9 整数溢出 3.1 0为函数main提供返回值 第4章 连接 4.1 什么是连接器 4.2 声明与定义 4.3 命名冲突与static修饰符 4.4 形参、实参与返回值 4.5 检查外部类型 4.6 头文件 第5章 库函数 5.1 返回整数的getchar函数 5.2 更新顺序文件 5.3 缓冲输出与内存分配 5.4 使用errno检测错误 5.5 库函数signal 第6章 预处理器 6.1 不能忽视宏定义中的空格 6.2 宏并不是函数 6.3 宏并不是语句 6.4 宏并不是类型定义 第7章 可移植性缺陷 7.1 应对C语言标准变更 7.2 标识符名称的限制 7.3 整数的大小 7.4 字符是有符号整数还是无符号整数 7.5 移位运算符 7.6 内存位置0 7.7 除法运算时发生的截断 7.8 随机数的大小 7.9 大小写转换 7.1 0首先释放,然后重新分配 7.1 1可移植性问题的一个例子 第8章 建议与答案 8.1 建议 8.2 答案 附录A PRINTF,VARARGS与STDARG 附录B Koenig和Moo夫妇访谈
C陷阱与缺陷的书评
Andrew同学扬名的老书
这个可是Andrew Koenig同志扬名已久的一本书.可真的是扬名太久了,这本书居然是出版在ANSI C制订以前,真是汗阿.以至于书中居然还在考虑如何兼容K&R风格的函数定义形式. 这本书倒真的是一些很琐碎的事情,比如说dang.........
2006-10-02 17:27
很好的书,很菜的排版
很好的书,不是初级读物,但也不过于艰深,而且厚度刚刚好,让人在热情高涨阶段读完,不致于到了一半时间就气馁。 但令人感到遗憾的是,排版是太差了!代码缩进极其混乱,许多代码看上去参差不齐,该对齐的地方.........
2008-06-16 23:04
挑点毛病
【P97 -L5】 toupper(int c) { if(c >= 'a' && c <= 'z') c += 'A' ? 'a'; return c; } 看到这心想,哦印刷错误。翻过一页,说到把它实现为宏: #define toupper(c) ((c) >= 'a' &&.........
2008-08-05 10:50
C程序员应该反复读的书
这是一本小册子,有让人继续读下去的欲望,倒不是因为页数少好欺负,是因为书中所说的几乎所有需要注意的地方作为一个程序员都有可能遇到,作者叙述起来很有意思,丝毫没有说教的感觉,举的例子很简单却一针见血.........
2010-07-24 01:36
有价值的老书
这本书的主题是C中的各类细节,平时往往不会注意。 1.注释的嵌套性,怎么判断编译器是否允许嵌套注释。 2.运算符优先级,结合顺序,编译器贪婪 3.assert的实现方法,避免if 4.少敲一个分号导致各种血案 5.注意函.........
2013-11-26 16:08
理解这本书之前别用C语言做软件
这是一本需要放在案头时时翻阅的书,甚至如果不显得过分的话,每次写C代码之前都应该翻阅一下目录,回忆一下大致的内容。 这本书从词法、语法、语义、链接(中文版译为“连接”,但据我所读过的相关书籍,全部译.........
2013-10-22 21:53
标签
C语言,编程,C,c,计算机,C/C++,经典,程序设计