当前位置首页 > 百科> 正文

Linux环境下C编程指南(第2版)

2019-03-09 01:20:42 百科
Linux环境下C编程指南(第2版)

Linux环境下C编程指南(第2版)

《Linux环境下C编程指南(第2版)》是2010年清华大学出版社出版的图书。

基本介绍

  • 书名:Linux环境下C编程指南(第2版)
  • ISBN:9787302220817
  • 定价:46元
  • 出版社:清华大学出版社
  • 出版时间:2010-3-5
  • 装帧:平装

图书简介

本书系统地介绍在Linux平台下用C语言进行程式开发的过程,通过列举大量的程式实例,使读者能够很快掌握在Linux平台下进行C程式开发的方法和技巧,并具备开发大型应用程式的能力。本书内容翔实,主要包括Linux平台下C语言及其编程环境的介绍,C语言编译器、调试工具和自动维护工具的使用方法,进程、档案的相关操作,输入输出操作和记忆体管理,C语言网路编程方法等。
本书是作者根据多年来的开发和教学经验并融合大量的编程实例而着成的。读者通过本书的学习能够快速地学会Linux下的C语言编程,并能从一开始就养成良好的编程习惯,以便于读者低起点、高效率地掌握Linux环境下的编程知识。
本书结构合理、概念清晰、实例丰富,并具有很强的启发性和实用性,适合有一定C语言基础,需要在Linux系统上编程的程式设计人员阅读,也可作为本、专科计算机专业的教材或参考书,还可供广大计算机爱好者学习C语言使用。

目录

第1章C语言基础和Linux系统概述 1
1.1C语言基础 2
1.1.1C语言概述 2
1.1.2数据类型 2
1.1.3运算符和表达式 9
1.1.4C程式语句 10
1.1.5函式 15
1.1.6编译预处理 16
1.2Linux系统概述 18
1.2.1Linux系统的发展历史 18
1.2.2Linux系统的特点及主要功能 19
1.2.3Linux系统的主要产品 20
1.3本章小结 20
第2章记忆体管理 21
2.1静态记忆体与动态记忆体 22
2.1.1静态记忆体 22
2.1.2动态记忆体 23
2.2安全性问题 24
2.3记忆体管理操作 25
2.3.1动态记忆体的分配 25
2.3.2动态记忆体的释放 25
2.3.3调整动态记忆体的大小 27
2.3.4分配堆叠 28
2.3.5记忆体锁定 29
2.4使用鍊表 29
2.5记忆体映像I/O 32
2.5.1创建记忆体映像 33
2.5.2撤销记忆体映像 33
2.5.3将记忆体映像写入外存 34
2.5.4改变记忆体映像的属性 36
2.6本章小结 37
第3章vim与Emacs编辑器 39
3.1vim简介 40
3.1.1启动与退出vim 40
3.1.2命令行模式的操作 41
3.1.3命令行模式切换到输入模式 43
3.1.4最后行模式的操作 43
3.2Emacs简介 44
3.2.1Emacs编辑器的运行和结束 44
3.2.2基本操作 45
3.3Emacs的C模式 47
3.3.1自动缩进 47
3.3.2注释 47
3.3.3预处理扩展 47
3.3.4自动状态 47
3.3.5使用Emacs进行编译和调试 48
3.4本章小结 48
第4章gcc编译器 49
4.1gcc编译器简介 50
4.1.1HelloWorld程式 50
4.1.2gcc选项概述 51
4.1.4调试标记 54
4.1.5利用gcc最佳化代码 56
4.1.6使用高级gcc选项 60
4.2gcc编译流程简介 61
4.2.1C预处理器cpp 62
4.2.2GUN连线器ld 62
4.2.3GUN彙编器as 62
4.2.4档案处理器ar 62
4.2.5库显示ldd 63
4.3其他编译调试工具 63
4.4本章小结 64
第5章调试工具gdb 65
5.1gdb符号调试器简介 66
5.2gdb功能详解及其套用 66
5.2.1调试步骤 67
5.2.2显示数据命令 75
5.2.3使用断点 80
5.2.4使用观察视窗 84
5.2.5查看栈信息 87
5.2.6查看源程式 89
5.2.7查看运行时数据 91
5.2.8改变程式的执行 99
5.2.9coredump分析 102
5.3gdb调试多执行绪程式 108
5.4其他调试工具 108
5.5本章小结 108
第6章进程控制 109
6.1进程的基本概念 110
6.1.1进程基本介绍 110
6.1.2进程的属性 111
6.2进程控制的相关函式 111
6.2.1进程的创建 112
6.2.2进程等待 116
6.2.3进程的终止 120
6.2.4进程ID和进程组ID 123
6.2.5system函式 128
6.3多个进程间的关係 129
6.3.1进程组 129
6.3.2时间片的分配 130
6.3.3进程的同步 132
6.4执行绪 132
6.4.1执行绪的创建 132
6.4.2执行绪属性的设定 133
6.4.3结束执行绪 134
6.4.4执行绪的挂起 134
6.4.5取消执行绪 135
6.4.6互斥 136
6.5本章小结 137
第7章进程间通信 139
7.1进程间通信简介 140
7.2共享记忆体和信号量 140
7.2.1SYSV子系统的基本概念 140
7.2.2共享记忆体 142
7.2.3信号量 149
7.3管道通信 159
7.3.1管道的创建和关闭 160
7.3.2管道的读写操作 161
7.4命名管道 162
7.4.1命名管道的创建 163
7.4.2命名管道的使用 163
7.5讯息伫列 168
7.5.1讯息伫列的创建与打开 169
7.5.2向讯息伫列中传送讯息 169
7.5.3从讯息伫列中接收讯息 170
7.5.4讯息伫列的控制 170
7.6本章小结 172
第8章档案操作 173
8.1档案系统简介 174
8.1.1档案 174
8.1.2档案的相关信息 176
8.1.3档案系统 177
8.2基于档案描述符的I/O操作 177
8.2.1档案的创建、打开与关闭 177
8.2.2档案的读写操作 180
8.2.3档案的定位 185
8.3档案的其他操作 187
8.3.1档案属性的修改 187
8.3.2档案的其他操作 189
8.4特殊档案的操作 192
8.4.1目录档案的操作 192
8.4.2连结档案的操作 194
8.4.3管道档案的操作 196
8.4.4设备档案 197
8.5本章小结 197
第9章输入输出——基于流的操作 199
9.1流简介 200
9.2基于流的I/O操作 201
9.2.1流的打开和关闭 201
9.2.2缓冲区的操作 203
9.2.3直接输入输出 205
9.2.4格式化输入输出 207
9.2.5基于字元和行的输入输出 210
9.3临时档案 214
9.4本章小结 218
第10章信号及信号处理 219
10.1信号及其使用简介 220
10.1.1信号简介 220
10.1.2信号的使用 222
10.2信号操作的相关係统调用 223
10.2.1信号处理 223
10.2.2信号的阻塞 231
10.2.3传送信号 237
10.3信号处理的潜在危险 245
10.4本章小结 245
第11章网路编程 247
11.1网路编程基本原理 248
11.1.1计算机网路体系结构模式 248
11.1.2TCP/IP协定 249
11.1.3客户机/伺服器模式 250
11.1.4套接口编程基础 254
11.1.5IP位址转换 265
11.2TCP套接口编程 270
11.2.1基于TCP的客户机/伺服器模式 271
11.2.2信号处理 278
11.2.3高级技术 279
11.3UDP套接口编程 297
11.3.1基于UDP的客户机/伺服器模式 297
11.3.2主要系统调用 298
11.3.3基于UDP套接口编程示例 299
11.3.4可靠性问题 302
11.3.5UDP套接口的连线 304
11.4原始套接口编程 305
11.4.1基本形式和操作 305
11.4.2原始套接口编程实例 306
11.5网路编程实例 311
11.6本章小结 315
第12章底层终端编程 317
12.1底层终端编程 318
12.1.1属性控制 318
12.1.2使用terminfo 320
12.2伪终端 323
12.3本章小结 324
第13章使用make 325
13.1makefile档案简介 326
13.2make书写规则 328
13.2.1规则举例 328
13.2.2在规则中使用通配符 328
13.2.3档案搜寻 329
13.2.4伪目标 330
13.2.5多目标 331
13.2.6静态模式 331
13.2.7自动生成依赖性 332
13.3使用命令 334
13.3.1显示命令 334
13.3.2执行命令 334
13.3.3命令出错 335
13.3.4嵌套执行make 335
13.3.5定义命令包 337
13.4使用变数 338
13.4.1变数的基础 338
13.4.2赋值变数 339
13.4.3变数的高级用法 341
13.4.4追加变数值 343
13.4.5override指示符 343
13.4.6多行变数 344
13.4.7环境变数 344
13.4.8目标变数 344
13.4.9模式变数 345
13.5使用条件判断 346
13.5.1示例 346
13.5.2语法 347
13.6使用函式 348
13.6.1函式的调用语法 349
13.6.2字元串处理函式 349
13.6.3档案名称操作函式 352
13.6.4foreach函式 354
13.6.5if函式 354
13.6.6call函式 355
13.6.7origin函式 355
13.6.8shell函式 356
13.6.9控制make的函式 357
13.7make的运行 357
13.7.1make的退出码 357
13.7.2指定makefile档案 357
13.7.3指定目标 358
13.7.4检查规则 359
13.7.5make的参数 360
13.8隐含规则 363
13.8.1使用隐含规则 364
13.8.2隐含规则一览 364
13.8.3隐含规则使用的变数 366
13.8.4隐含规则链 368
13.8.5定义模式规则 368
13.8.6隐含规则搜寻算法 372
13.9使用make更新函式馆档案 373
13.9.1函式馆档案的成员 373
13.9.2函式馆成员的隐含规则 374
13.9.3函式馆档案的后缀规则 374
13.9.4注意事项 374
13.10高级使用 375
13.10.1宏的使用 375
13.10.2内部规则 380
13.10.3make递归 382
13.10.4依赖性的计算 383
13.11库的使用 386
13.11.1创建库和维护库 386
13.11.2库的连结 387
13.12make辅助开发工具 388
13.13本章小结 388
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net