C语言核心技术原书第2版PDF电子书下载完整高清版|百度网盘下载

编辑评论:

C 语言核心技术(原书第 2 版) 包含使用 GNU 软件工具集中的常用工具的说明。您将学习如何使用 GNUmake 创建 C 程序、从 C 源代码编译可执行程序以及使用 GNU 调试器来测试和调试程序。

C语言核心技术原著第2版PDF电子书下载

总结

C 程序员在编写程序时必须手头有这本书。在本书中,C 语言专家 Peter Prinz 和 Tony Crawford 为您提供了丰富的编程参考信息。这个经典的新版本对 C 语言及其运行时库中的每个特性提供了清晰、详细的解释,包括多线程、通用宏和 2011 C 语言标准 (C1) 中的其他新特性。如果你想了解一个不熟悉的函数是做什么的,以及标准链接库如何规范它的执行,你可以在本书中找到答案,并附有经典示例。

图书组织

本书的结构 本书分为三个部分。第一部分严格按照每一项介绍C语言;第二部分介绍标准库;第三部分通过GNU软件集合中广泛使用的工具介绍了程序的编译和测试过程。

第 1 部分 第 1 部分包括第 1-15 章,介绍了 C 语言的基础知识。第 1 章介绍了 C 语言的常用概念和元素,每章在后续章节中都有特定的主题,例如类型、语句、指针等。这些章节中的主题顺序使得后一个主题涵盖了前一个主题中涵盖的内容(例如,首先是类型,然后是表达式和​​运算符,然后是语句等),但有时在阅读当前章节时,您一些相关细节仍需参考后续章节。例如,虽然第 8 章和第 9 章详细介绍了指针和数组,但有必要在第 5 章先讨论指针和数组(第 5 章介绍表达式和运算符)。

第 1 章,C 语言基础介绍了 C 语言的特性以及如何编写和编译 C 程序。本章介绍了一些基本概念,例如翻译单元、字符集和标识符。

第 2 章,数据类型,首先概述 C 中的类型,然后介绍基本类型、void 类型和枚举类型。

第 3 章,文字,介绍数字常量、字符常量和字符串文字,包括转义字符。

第 4 章,类型转换,涵盖显式和隐式类型转换,包括整数提升和普通算术转换。

第 5 章,表达式和运算符,描述了表达式、所有运算符及其相应操作数的求值。

第 6 章,语句介绍 C 语言语句,例如语句块、循环和跳转。

第 7 章,函数,介绍函数定义和函数调用,包括递归和内联函数。

第 8 章,数组,介绍定长和变长数组,包括字符串、数组初始化和多维数组。

第9章,指针,介绍对象指针和函数指针的定义和使用。

第 10 章,结构、联合和位域描述了数据是如何以用户定义的类型组织的。

第 11 章,声明,描述了声明的一般语法、标识符链接和对象的存储持续时间。

第12章,动态内存管理,介绍标准库的动态内存管理函数,然后通过实现二叉树来演示这些函数的使用。

第 13 章,输入和输出,介绍了 C 中输入和输出的概念,然后回顾了标准 I/O 链接库的使用。

第 14 章,多线程,介绍如何使用 C11 中的多线程特性,包括原子操作、线程间通信和线程存储。

第 15 章,预处理命令,描述宏、条件编译以及所有其他预处理命令和操作的定义和使用。

第二部分 第二部分包括第 16 章到第 18 章,涵盖 C 语言标准库。本节提供标准头文件的概述,并包括详细的函数使用参考。

第 16 章,标准头文件,描述标准头文件的内容和用途。头文件包含所有标准库宏和类型定义。

第 17 章,函数简介,概述标准库函数(例如,数学函数、时间和日期函数等)

第 18 章,标准库函数,按函数名称的字母顺序,详细描述了每个标准库函数,并通过示例展示了如何使用每个函数。

第三部分 第三部分包括第 19 章到第 22 章,介绍了 C 语言编程工具的基础知识,包括:编译器、制作工具集和调试器。这里描述的工具都是 GNU 软件包。最后以Eclipse IDE为例,介绍如何在C语言集成开发环境(IDE)中使用上述工具。

第 19 章,用 GCC 编译 C 程序,介绍 GCC 编译器为 C 程序员提供的核心功能,这是当今广泛使用的 C 编程工具。

第 20 章,使用 make 构建 C 程序描述了如何使用 make 程序自动编译大型程序。

第 21 章,使用 GDB 调试 C 程序描述了如何使用 GNU 调试器执行程序,以及如何分析程序的执行行为以查找逻辑错误。

第 22 章,使用 IDE,介绍了集成开发环境 (IDE) 的使用,它提供了对 C 程序开发中所有工具的统一和方便的访问。

C语言程序结构

C语言程序是由函数组成的,一个函数可以调用其他函数。对于精心设计的程序,每个功能都实现了特定目的。函数包含按顺序执行的语句。语句也可以组合在一起形成一个块语句或块。程序员可以使用标准库中预先编写好的函数,如果没有满足自己需求的标准函数,也可以使用自己的函数。除了C标准库外,还有很多特殊的链接库可以使用,比如图形函数链接库。然而,非标准库的使用限制了开发到已经加载了这些非标准库的系统的程序的可移植性。

每个 C 程序都必须定义至少一个函数,该函数具有特定的名称 main(),它是程序开始执行时要调用的第一个函数。 main()函数是程序结构中的顶层函数,其他函数会以子程序的形式被调用。

C编译器的工作原理

使用文本编辑器编写源代码后,可以调用 C 编译器将源代码转换为机器代码。编译器处理翻译单元,这些翻译单元由源代码文件和通过#include 命令引用的所有头文件组成。如果编译器在翻译单元中没有发现错误,它会生成一个包含相应机器代码的目标文件。目标文件通常具有扩展名 .0 或 .obj。除此之外,编译器还可以生成汇编列表(参见第 19 章)

对象文件也称为模块。一个链接库(如C标准库)包含了许多可以快速获取的编译模块,这些模块有很多标准函数。

编译器将 C 程序的每个翻译单元(指每个源代码文件及其包含的所有头文件)翻译成单独的目标文件。然后编译器调用链接器(linker)将所有的目标文件和使用的链接库函数组合成一个可执行文件(executable file)。图 1-1 显示了从多个源代码文件和链接库编译和链接程序的过程。可执行文件还包含目标操作系统加载和启动程序的所有信息。

阅读剩余
THE END