《C指针 基本概念 核心技术及最佳实践》PDF下载

  • 购买积分:9 如何计算积分?
  • 作  者:(印)纳威恩·拓奥普(Naveen Toppo),(印)海瑞恩科什·德万(Hrishikesh Dewan)著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2016
  • ISBN:9787111538189
  • 页数:170 页
图书介绍:本书从介绍内存和实时内存概念开始,然后讲述了指针变量的概念和它最重要的操作(引用和解引用)、指针运算和一维数组、使用指针处理字符串、指针访问多维数组的用法、使用指针访问结构体与成员字段、函数指针概念的用法,以及文件I/O处理等知识。

第1章 内存、实时内存管理和虚拟内存 1

1.1 内存与类型 2

1.1.1 类型 2

1.1.2 内存排列 4

1.2 数据与指令 5

1.2.1 处理器如何访问主存 6

1.2.2 缓存 6

1.3 编译过程链 8

1.3.1 预处理 9

1.3.2 编译 10

1.3.3 汇编器 12

1.3.4 链接 12

1.3.5 加载器 13

1.4 内存模型 14

1.4.1 实地址内存模型 16

1.4.2 实地址模式下的地址转换 16

1.4.3 扁平内存模型 16

1.4.4 分段内存模型 17

1.5 使用分段的内存排列 18

1.5.1 分段 18

1.5.2 代码段 18

1.5.3 数据段 19

1.5.4 未初始化/BSS段 19

1.5.5 栈段 20

1.5.6 堆段 20

1.6 实时内存组织 21

1.6.1 函数调用的复杂性 21

1.6.2 函数调用步骤 22

1.7 内存段 24

1.8 虚拟内存组织 26

1.8.1 一窥虚拟内存系统 26

1.8.2 分页 29

1.8.3 页表 29

1.9 小结 30

第2章 指针基础 31

2.1 变量的地址 32

2.2 地址操作符 33

2.3 指针声明 34

2.4 指针赋值 35

2.5 指针变量大小 36

2.6 指针解引用 38

2.7 指针的基本用法 39

2.7.1 传值 40

2.7.2 引用传递 40

2.8 指针和常量 42

2.8.1 常量指针变量 42

2.8.2 常量指针 43

2.8.3 指针常量 44

2.9 多级指针 45

2.10 理解神秘的指针表达式 46

2.10.1 一级指针引用 47

2.10.2 一级指针解引用 47

2.10.3 二级指针引用 48

2.10.4 二级指针解引用 48

2.11 小结 50

第3章 指针运算与一维数组 51

3.1 数组内存排列 52

3.2 指针运算 55

3.2.1 指针加法 56

3.2.2 指针减法 58

3.3 数组探究 60

3.3.1 动态数组 62

3.3.2 指针数组 64

3.3.3 数组指针 66

3.4 小结 67

第4章 指针与字符串 69

4.1 内存中的字符串排列 70

4.2 动态内存分配 72

4.3 字符串操作 75

4.3.1 处理字符串输入 75

4.3.2 字符串遍历 75

4.3.3 字符串复制 77

4.3.4 字符串连接 77

4.4 字符串数组 78

4.5 小结 84

第5章 指针与多维数组 85

5.1 数组排列 86

5.1.1 二维数组指针 87

5.1.2 三维数组排列 94

5.2 小结 104

第6章 结构体指针 105

6.1 定义结构体 106

6.2 声明结构体变量 107

6.3 访问结构体成员 107

6.4 初始化结构体变量 108

6.4.1 方法1 108

6.4.2 方法2 108

6.5 结构体嵌套 108

6.6 结构体存储 109

6.7 结构体填充 111

6.7.1 数据对齐 111

6.7.2 字段填充 112

6.8 当结构体填充派不上用场时 115

6.9 结构体封装 118

6.10 结构体赋值与复制 120

6.11 结构体指针 122

6.11.1 访问成员变量 122

6.11.2 传递结构体指针变量 124

6.12 常见错误 125

6.13 结构体指针类型转换 126

6.14 自引用结构体 126

6.15 数据结构与算法 127

6.15.1 链表 127

6.15.2 二叉搜索树 129

6.15.3 遍历节点 131

6.16 小结 131

第7章 函数指针 133

7.1 定义函数指针 134

7.2 初始化函数指针 135

7.3 使用函数指针 135

7.4 函数指针调用的汇编细节 137

7.4.1 直接调用函数 138

7.4.2 利用函数指针间接调用函数 138

7.5 函数指针数组 139

7.6 从函数中返回函数指针 140

7.6.1 复杂方法 140

7.6.2 简单方法 141

7.7 Linux内核里的函数指针用法 142

7.8 神秘的函数指针声明总结 144

7.9 小结 145

第8章 文件I/O指针 147

8.1 辅存的物理排列 148

8.1.1 盘面图 148

8.1.2 硬盘驱动器与CPU的接口 149

8.1.3 硬盘寻址方案 150

8.2 文件系统结构简介 150

8.2.1 逻辑文件系统 150

8.2.2 基本文件系统 152

8.3 创建一个文件系统需要什么 152

8.3.1 硬盘数据结构体 152

8.3.2 内存数据结构体 152

8.4 访问文件 153

8.5 首要任务 154

8.6 次要任务 155

8.7 从文件读取 156

8.7.1 从文件中读取单个字符 156

8.7.2 从文件中读取字符串 158

8.7.3 从文件中读取数据块 159

8.7.4 从文件中格式化读取 160

8.8 写入文件 162

8.8.1 向文件写入单个字符 162

8.8.2 向文件写入字符串 163

8.8.3 向文件写入数据块 164

8.9 在任意位置访问硬盘 165

8.10 其他函数 167

8.10.1 确定文件大小 167

8.10.2 重置文件位置的另一种方法 169

8.11 小结 170