C语言程序设计现代方法第二版pdf电子书下载|百度网盘下载

编辑评论:

《Programming in C: A Modern Approach (Second Edition)》是C语言的经典之作。本书讨论了标准 C 和 C 标准库的所有特性,包括其他书籍中很少涉及的信号、setjmp /longjmp 和可变参数列表。全书从易到难,循序渐进,螺旋式地讲述C语言,把指针、位操作等难点处理得很好

Modern Methods of C Language Programming 第二版pdf电子书下载

关于作者

K。 N. King 是世界著名的计算机编程教育家,目前是佐治亚州立大学数学和计算机科学副教授。他拥有耶鲁大学计算机科学硕士学位,加州大学伯克利分校计算机科学博士学位,并曾在乔治亚理工学院任教。除了这本书,他还撰写了畅销书 Modula-2: A Complete Guide 和 Java Programming: From the beginning,并在 Dr. Dobbs Journal 等专业期刊上发表了大量文章。在业余时间,金教授还参演了多部电影。

陆秀峰,亚洲科技大学(AIT)计算机软件硕士,现任北京理工大学软件学院教师。多年来一直从事《计算机基础(双语)》、《C语言程序设计(双语)》、《程序设计开发与实践》等本科课程的教学,深受学生好评。她还翻译了《Data Structures and Algorithms: A C# Language Description》一书。

黄倩,博士,中国科学院计算技术研究所,中国计算机学会会员。研究方向包括视频处理、视频监控等。在国际知名期刊和国际会议论文集上发表论文10篇。有一本书《编程明珠(第2版)》,深受读者欢迎。

简介

时至今日,C语言仍然是计算机领域的常用语言之一,但今天的C语言已经和当初大不相同了。本书的主要目的之一是通过强调标准 C、强调软件工程和不强调“手工优化”的“现代方法”来介绍 C。该版本紧密集成了 C99 标准,并将其与 C89 标准进行了比较,补充了 C99 中的新功能。本书分为四部分:C语言基本特性、C语言高级特性、C语言标准库和参考资料。每章末尾有“问答”部分,提供与章节内容相关的一系列问答,以及适量的习题。

Programming in C: A Modern Approach (Second Edition) 是为本科 C 课程编写的教材,也非常适合作为其他课程的补充书。

组织结构

本书分为四部分。

C 语言的基本特性。第 1-10 章包含足够多的 C 语言来帮助读者编写使用数组和函数的单文件程序。

C 语言的高级特性。第11-20章是在前几章内容的基础上,内容有一定难度。深入介绍指针、字符串、预处理器、结构、联合、枚举以及C语言的底层特性。此外,第 15 章和第 19 章提供了编程指导。

C 语言标准库。第 21 - 27 章重点介绍 C 库——与编译器相关的大量函数。

这部分资料适合讲课,但大部分资料更适合参考。

参考资料。附录 A 给出了 C 语言运算符的完整列表。附录 B 描述了 C99 和 C89 之间的主要区别。附录 C 讨论了 C89 和经典 C 之间的区别。附录 D 按字母顺序列出了 C89 和 C99 标准库中的所有函数,并给出了每个函数的详细说明。附录 E 列出了 ASCI 字符集。还有一个带注释的参考列表,为读者提供额外的信息来源。

全面的 C 课程应该按顺序涵盖前 20 章,根据需要从第 21 章到第 27 章添加一些内容(其中第 22 章,讨论文件输入/输出是最重要的),短期课程可以忽略在不失去连贯性的情况下遵循:8.3(可变长度数组)、9.6(递归)、12.4(指针和多维数组)、14.5(其他指令)、17.7(指向函数的指针)、第 17.8 节(受限指针)、第 17.9 节(灵活数组成员)、第 18.6 节(内联函数)、第 19 章(编程)、第 20.2 节(结构中的位域)和第 20.3 节(其他低级技术)。

现代方法到底是什么

本书最重要的目标之一是通过“现代方法”介绍 C 语言。我试图通过遵循这些路线来实现这一目标。

从 C 语言的角度来看。我没有将 C 视为唯一值得学习的编程语言,而是将其作为许多有用的语言之一来介绍。我在书中提到了最适合用 C 编程的应用程序类型。此外,我还展示了如何使用 C 语言避免弱点。

强调C语言的标准版本。我尽可能少地关注 C89 标准之前的 C,只偶尔引用经典 (K&R) C(1978 年版的 C,如 Brian Kernighan 和 Dennis Ritchie 的 C 编程语言第一版中所述)。附录 C 列出了 C89 和经典 C 之间的主要区别。揭穿神话。今天的编译器经常与过去 C 语言的基本假设不一致,我很想揭穿一些 C 神话并挑战一些长期存在的 C 信念(例如,指针运算必须比数组下标更快) .我重新审视了 C 语言的旧约定,保留了仍然有用的约定。

强调软件工程。我把C语言看成是一种成熟的软件工程工具,看如何用C语言来处理大规模编程过程中出现的问题。本书强调程序应该是可读的、可维护的、可靠的和易于移植的,特别强调信息隐藏。

延迟介绍 C 语言的低级特性。虽然这些特性对于用 C 编写的系统非常有用,但它们现在不太适用了,因为 C 比以前更广泛地使用。本书没有像其他许多 C 书籍那样预先介绍这部分,而是将其推迟到第 20 章。

不再强调“手动优化”,很多书籍引导读者多写一些技术代码来获得程序效率的小幅提升。如今,随着对 C 编译器的优化无处不在,这些编程技巧通常是不必要的。事实上,它们使程序运行效率降低。

阅读剩余
THE END