C语言核心技术第二版豆瓣在线阅读-C语言核心技术原书第2版PDF电子书下载完整高清版

C语言核心技术第二版豆瓣在线阅读-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~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语言编程工具的基础知识,包括:编译器、make工具集,以及调试器。这里所介绍的工具都属于GNU软件包。最后,以EclipseIDE为例,介绍在C语言集成开发环境(IDE)中如何使用上述工具。

第19章,使用GCC编译C程序介绍GCC编译器针对C语言程序员所提供的核心功能,GCC编译器是现今广泛使用的C语言编程工具。

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

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

第22章,使用IDE介绍集成开发环境(IDE)的使用方法,IDE使得在C程序开发中可以统一、便利地访问所有工具。

C语言程序的结构

C语言程序由函数(function)组成,一个函数可以调用其他函数。对于一个设计良好的程序,每个函数实现特定的目的。函数包含循序执行的语句(statement),语句也可以分组聚集在一起以形成语句块(block statement),或者称为块(block)。程序员可以使用标准库中预先编好的函数,如果没有满足需求的标准函数,也可以使用自己编写的函数。除C标准库外,还有许多特殊链接库可以使用,例如图形函数链接库。然而,如果使用非标准库,则会限制所开发程序的可移植性,这些程序只能移植到已经加载了这些非标准库的系统上。

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

C编译器运行原理

一旦使用文本编辑器编写完源代码,就可以调用C编译器把源代码转换成机器码。编译器对翻译单元进行处理,一个翻译单元由一个源代码文件以及所有通过#include命令引用的头文件组成。如果编译器在翻译单元内没有发现错误,则会生成包含了对应机器码的目标文件(object file)。目标文件的扩展名通常为.0或.obj。除此之外,编译器也可以产生一个汇编器列表(请参见第19章)

目标文件也称为模块(module)。一个链接库(例如C标准库)包含了多个编译好的可以快速获取的模块,模块里有许多标准函数。

编译器将一个C程序的每个翻译单元(指的是每个源代码文件,以及其所包含的所有头文件)翻译成一个独立的目标文件。然后编译器调用链接器(linker)将所有的目标文件和所用到的链接库函数结合起来,成为一个可执行文件(executable file)。图1-1展示了一个程序从几个源代码文件和链接库编译和链接的过程。可执行文件内也包含了所有供目标操作系统加载与启动该程序的信息。

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

C语言核心技术第二版豆瓣在线阅读-C语言核心技术原书第2版PDF电子书下载完整高清版插图(1)C语言核心技术第二版豆瓣在线阅读-C语言核心技术原书第2版PDF电子书下载完整高清版插图(2)C语言核心技术第二版豆瓣在线阅读-C语言核心技术原书第2版PDF电子书下载完整高清版插图(3)C语言核心技术第二版豆瓣在线阅读-C语言核心技术原书第2版PDF电子书下载完整高清版插图(4)

评分及评论

无用户评分

来评个分数吧

  • 5 分
    0
  • 4 分
    0
  • 3 分
    0
  • 2 分
    0
  • 1 分
    0

Comments