图书介绍
从零开始学Linux编程PDF|Epub|txt|kindle电子书版本网盘下载
- 罗利民,王浩编著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121170263
- 出版时间:2012
- 标注页数:327页
- 文件大小:127MB
- 文件页数:342页
- 主题词:Linux操作系统-程序设计
PDF下载
下载说明
从零开始学Linux编程PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1篇 Linux系统知识1
第1章 认识Linux系统1
1.1 Linux发行版的介绍1
1.1.1 Red Hat Linux1
1.1.2 Debian Linux1
1.2 Linux的安装2
1.2.1 Linux的分区格式2
1.2.2在Windows系统中划分Linux分区2
1.2.3 Red Hat Linux 9.0的安装4
1.2.4 GRUB在Windows分区中引导Linux13
1.3 VMware虚拟机安装Linux系统15
1.3.1 VMware软件安装15
1.3.2新建虚拟计算机17
1.3.3 VMware的使用21
1.3.4在VMware虚拟机中安装Linux系统23
1.4第一个C程序25
1.4.1在Linux中编写C程序代码25
1.4.2编译程序26
1.5小结27
1.6小测试27
第2章 常用的Linux操作命令28
2.1目录与文件命令28
2.1.1查看目录命令pwd28
2.1.2打开目录命令cd28
2.1.3查看目录命令ls29
2.1.4建立文件命令touch30
2.1.5建立与删除文件夹命令mkdir、rmdir30
2.1.6文件复制命令cp31
2.1.7文件移动和更名命令mv32
2.1.8删除文件与目录命令rm32
2.1.9创建链接命令ln33
2.1.10查看文件信息命令we33
2.1.11文件查看命令cat34
2.1.12查看文件视图命令head与tail34
2.1.13文件权限设置命令chmod35
2.1.14查找文件命令find36
2.2 man系统帮助命令36
2.2.1 man手册的使用方法37
2.2.2帮助文档的结构37
2.3 info手册38
2.4小结39
2.5小测试39
第3章 文本编辑器的使用40
3.1 VIM的使用40
3.1.1 VIM的启动40
3.1.2在桌面上创建VIM启动器40
3.1.3 VIM的工作模式41
3.1.4保存与打开文件42
3.1.5移动光标43
3.1.6常用操作43
3.1.7选项设置45
3.1.8调用shell命令46
3.2 VIM使用实例46
3.2.1字符的插入与删除46
3.2.2字符的查找与替换47
3.3带菜单的GVIM48
3.3.1文件的新建与保存48
3.3.2查找与替换49
3.4图形化的gedit50
3.4.1 gedit的启动与打开文件50
3.4.2 gedit编辑文件50
3.4.3 gedit打印文件51
3.4.4 gedit的首选项52
3.5小结54
3.6小测试55
第4章 编译与调试56
4.1编译的概念和理解56
4.1.1程序编译的过程56
4.1.2编译器57
4.2 gcc编译器57
4.2.1 gcc编译器简介57
4.2.2 gcc对源程序扩展名的支持57
4.3 C程序的编译58
4.3.1编写第一个C程序58
4.3.2用gcc编译程序59
4.3.3查看gcc的参数59
4.3.4设置输出的文件60
4.3.5查看编译过程61
4.3.6设置编译的语言61
4.4编译过程的控制62
4.4.1编译过程简介62
4.4.2控制预处理过程63
4.4.3生成汇编代码63
4.4.4生成目标代码64
4.4.5链接生成可执行文件64
4.5 gdb调试程序65
4.5.1 gdb简介65
4.5.2在程序中加入调试信息65
4.5.3启动gdb65
4.5.4在gdb中加载需要调试的程序66
4.5.5在gdb中查看代码66
4.5.6在程序中加入断点66
4.5.7查看断点67
4.5.8运行程序67
4.5.9查看变量68
4.6程序调试实例69
4.6.1编写一个程序69
4.6.2编译文件70
4.6.3程序调试70
4.6.4 gdb帮助的使用72
4.7 gdb常用命令72
4.8编译程序常见的错误与问题74
4.8.1逻辑错误与语法错误74
4.8.2 C程序中的错误与异常74
4.8.3编译中的警告提示74
4.8.4找不到包含文件的错误75
4.8.5错误地使用逗号75
4.8.6括号不匹配错误75
4.8.7小括号不匹配错误76
4.8.8变量类型或结构体声明错误76
4.8.9使用不存在的函数错误76
4.8.10大小写错误76
4.8.11数据类型错误77
4.8.12赋值类型错误77
4.8.13循环或判断语句中多加分号77
4.9小结78
4.10小测试78
第2篇 C语言基本知识79
第5章 C语言基础79
5.1 C程序的基本概念79
5.1.1 C程序的基本结构79
5.1.2 C程序的一般格式80
5.1.3 C程序中的注释81
5.2数据类型82
5.2.1整型(int)82
5.2.2浮点型(looat)83
5.2.3字符型(char)84
5.2.4变量名85
5.2.5字符NULL86
5.3变量赋值与输出86
5.3.1变量赋值86
5.3.2 printf函数输出变量86
5.3.3 scanf函数从键盘读入变量88
5.4运算符89
5.4.1算术运算符89
5.4.2关系运算符91
5.4.3逻辑运算符91
5.5小结92
5.6小测试93
第6章 C程序的常用语句94
6.1流程控制语句94
6.1.1 if条件语句94
6.1.2 if语句嵌套96
6.1.3 switch选择执行语句98
6.1.4 for循环语句99
6.1.5 for循环嵌套101
6.1.6 for循环应用实例:输出九九乘法口诀表102
6.1.7 while循环语句103
6.1.8 do while循环语句104
6.1.9转移控制语句:continue105
6.1.10转移控制语句:break106
6.1.11转移控制语句:return107
6.2流程控制语句实例107
6.2.1三个数字的排序108
6.2.2解一元二次方程109
6.3两种特殊语句结构111
6.3.1三元操作符111
6.3.2块语句112
6.4小结113
6.5小测试113
第7章 数组与指针114
7.1数组的理解与操作114
7.1.1什么是数组114
7.1.2数组的定义与访问115
7.1.3数组使用实例116
7.2指针117
7.2.1对指针的理解117
7.2.2指针操作符117
7.2.3指针的定义与访问118
7.2.4指针使用实例119
7.3数组与指针120
7.3.1数组与指针的关系120
7.3.2指针的算术运算120
7.3.3字符数组与字符串121
7.4二维数组与多维数组122
7.4.1对二维数组的理解122
7.4.2二维数组与指针123
7.5实例125
7.5.1学生成绩统计实例125
7.5.2冒泡法排序实例126
7.5.3统计字符串中的字符127
7.5.4小写字母转换成大写字母129
7.5.5用指针访问数组130
7.6常见问题131
7.6.1错误的写操作131
7.6.2指针的错误赋值132
7.6.3数组指针的越界错误133
7.7小结134
7.8小测试134
第8章 函数135
8.1对函数的理解135
8.1.1什么是函数135
8.1.2系统函数(库函数)与用户自定义函数136
8.1.3函数的返回值137
8.1.4无参函数138
8.1.5有参函数138
8.1.6函数参数实例138
8.2自定义函数140
8.2.1自定义函数的编写140
8.2.2函数中调用函数141
8.2.3函数声明143
8.2.4递归函数144
8.2.5 main函数的参数argc与argv145
8.3函数与指针145
8.3.1值调用与引用调用146
8.3.2引用调用与指针146
8.3.3指针参数实例147
8.3.4自定义函数中指针使用实例148
8.3.5数组作为参数149
8.3.6数组作为函数参数实例150
8.4返回值151
8.4.1函数返回值的类型151
8.4.2函数返回指针152
8.4.3函数返回指针实例153
8.4.4函数返回结果到参数154
8.5库函数154
8.5.1库函数的种类154
8.5.2库函数包含文件155
8.5.3头文件使用实例156
8.6小结156
8.7小测试156
第9章 字符与字符串处理158
9.1字符测试函数介绍158
9.1.1数字或字母测试函数isalnum()158
9.1.2字母测试函数isalpha()159
9.1.3可打印字符测试函数isgraph()160
9.1.4大小写字母测试函数islower()和isupper()160
9.1.5数字测试函数isdigit()161
9.1.6符号测试函数ispunct()162
9.1.7其他字符测试函数163
9.2字符测试函数综合实例163
9.2.1统计字符串中各类字符的个数163
9.2.2判断电话号码与姓名是否正确165
9.3字符串转换167
9.3.1 C程序中的字符串167
9.3.2字符串转换成浮点型函数atof()167
9.3.3字符串转换成整型函数atoi()168
9.3.4字符串转换成长整型函数atol()169
9.3.5将浮点型数转换成字符串函数ecvt()170
9.3.6字母的大小写转换函数tolower()和toupper()170
9.3.7其他字符串转换函数171
9.4字符串比较172
9.4.1字符串比较函数bcmp()172
9.4.2字符串大小比较函数memcmp()173
9.4.3忽略大小写比较字符串函数strncasecmp()174
9.5字符串复制175
9.5.1字符串复制函数bcopy()175
9.5.2字符串复制函数memccpy()175
9.5.3字符串复制函数strcpy()176
9.5.4字符串复制函数stmcpy()177
9.6字符串的清理与填充177
9.6.1字符串清理函数bzero()177
9.6.2字符串填充函数memset()178
9.7字符串查找179
9.7.1字符串查找函数index()与rindex()179
9.7.2字符串查找函数memchr()180
9.7.3字符串查找函数strchr()与strrchr()180
9.8字符串的连接与分割181
9.8.1字符串连接函数strcat()181
9.8.2字符串分割函数strtok()182
9.9其他字符串函数182
9.9.1字符串长度函数strlen()183
9.9.2允许出现字符查找函数strspn()183
9.9.3不允许出现字符查找函数strcspn()184
9.10小结185
9.11小测试185
第10章 结构体186
10.1结构体操作186
10.1.1对结构体的理解186
10.1.2结构体的定义186
10.1.3结构体的访问188
10.1.4结构体数组189
10.1.5结构体使用实例190
10.2结构体与指针191
10.2.1结构体指针的定义192
10.2.2结构体指针的访问192
10.2.3结构体作为函数的参数193
10.2.4结构体指针作为函数的参数195
10.2.5结构体作为函数的返回值196
10.2.6结构体指针作为函数的返回值197
10.3小结199
10.4小测试199
第11章 时间函数200
11.1常用的时间函数200
11.1.1返回时间函数200
11.1.2取当前时间函数201
11.1.3字符串格式时间函数203
11.1.4另一种字符串格式时间函数203
11.1.5取得当地时间函数204
11.1.6将时间转换成秒数函数205
11.1.7取得当前时间函数206
11.1.8设置当前时间函数207
11.2时间函数使用实例208
11.2.1运行程序所需要的时间208
11.2.2两次输入之间的时间间隔209
11.2.3设置系统时间210
11.3小结211
11.4小测试211
第12章 C语言的编程规范212
12.1命名规范212
12.2格式规范214
12.3函数规范215
12.4其他规范216
第3篇 Linux系统编程218
第13章 Shell编程218
13.1 bash的使用218
13.1.1 bash的内部命令与外部命令218
13.1.2命令补齐功能218
13.1.3命令通配符219
13.1.4使用命令的历史记录219
13.1.5命令别名220
13.2 Shell程序的基本结构220
13.3局部变量221
13.4环境变量221
13.4.1查看环境变量222
13.4.2访问环境变量222
13.4.3定义环境变量222
13.4.4在系统配置文件中定义环境变量222
13.4.5位置变量223
13.5 Shell运算符224
13.5.1变量赋值224
13.5.2算术运算符224
13.6输入和输出225
13.6.1 echo命令输出结果226
13.6.2 read命令读取信息227
13.6.3文件重定向228
13.7引号的使用方法229
13.7.1双引号229
13.7.2单引号230
13.7.3反引号230
13.7.4反斜线230
13.8测试语句230
13.8.1文件状态测试231
13.8.2数值测试231
13.8.3字符串测试232
13.8.4逻辑测试233
13.9流程控制结构233
13.9.1 if语句233
13.9.2 if语句应用实例234
13.9.3 for语句236
13.9.4 for循环应用实例236
13.9.5 until循环238
13.10 Shell编程实例238
13.10.1程序功能239
13.10.2编写程序代码239
13.11小结240
13.12小测试240
第14章 目录与文件242
14.1文件操作权限242
14.2错误处理与错误号243
14.2.1对错误定义的理解243
14.2.2用错误常数显示错误信息244
14.2.3用错误号显示错误信息245
14.3创建与删除目录245
14.3.1创建目录函数mkdir()246
14.3.2删除目录函数rmdir()247
14.4文件的创建与删除248
14.4.1创建文件函数creat()248
14.4.2删除文件函数remove()249
14.4.3建立临时文件函数mkstemp()250
14.5文件的打开与关闭252
14.5.1打开文件函数open()252
14.5.2文件打开方式的设置252
14.5.3打开文件的权限253
14.5.4文件打开实例253
14.5.5关闭文件函数close()254
14.6文件读写256
14.6.1写入文件函数write()256
14.6.2读取文件函数read()257
14.6.3文件读写位置的移动258
14.6.4将缓冲区数据写入磁盘函数sync()260
14.6.5将缓冲区数据写入磁盘函数fsync()261
14.7文件锁定262
14.7.1对文件锁定的理解263
14.7.2文件锁定函数flock()263
14.8文件的移动与复制265
14.8.1文件移动函数rename()265
14.8.2 rename()函数使用实例265
14.8.3文件复制实例266
14.9小结268
14.10小测试268
第4篇 Linux网络编程269
第15章 网络编程269
15.1网络编程的基本概念269
15.1.1 IP地址269
15.1.2端口270
15.1.3域名270
15.1.4 TCP与UDP270
15.2套接字271
15.2.1什么是套接字271
15.2.2套接字相关的数据类型271
15.2.3套接字类型272
15.3域名与IP地址272
15.3.1用域名取得主机的IP地址272
15.3.2用IP地址返回域名274
15.4网络协议275
15.4.1由协议名称取得协议数据275
15.4.2由协议编号取得协议信息276
15.4.3取得系统支持的所有协议277
15.5网络服务278
15.5.1取得系统支持的网络服务278
15.5.2用名称取得系统支持的服务279
15.5.3由端口取得服务名称281
15.6网络IP地址的转换282
15.6.1将网络地址转换成长整型数282
15.6.2将长整型IP地址转换成网络地址283
15.6.3主机字符顺序与网络字符顺序的转换284
15.7错误处理285
15.7.1 herror()函数显示错误285
15.7.2捕获错误编号285
15.8小结286
15.9小测试286
第16章 无连接的套接字通信287
16.1 socket套接字287
16.1.1建立socket287
16.1.2取得socket状态289
16.1.3设置socket状态290
16.2面向无连接的套接字通信291
16.2.1工作流程292
16.2.2信息发送函数sendto()292
16.2.3信息接收函数recvfrom()293
16.3无连接的套接字通信实例294
16.3.1无连接的套接字通信客户端294
16.3.2无连接的套接字通信服务器295
16.3.3测试UDP通信程序297
16.4小结298
16.5小测试298
第17章 面向连接的套接字通信299
17.1面向连接的套接字通信工作流程299
17.2绑定端口299
17.2.1绑定端口函数bind()299
17.2.2使用bind()函数绑定端口实例301
17.3监听与连接302
17.3.1等待监听函数listen()302
17.3.2 listen()函数使用实例303
17.3.3接受连接函数accept()304
17.3.4 accept()函数使用实例304
17.3.5请求连接函数connect()306
17.3.6 connect()函数使用实例307
17.4数据的发送与接收308
17.4.1数据接收函数recv()308
17.4.2 recv()函数使用实例309
17.4.3数据发送函数send()310
17.4.4数据传输函数write()与read()311
17.4.5 read()函数接收数据实例311
17.5面向连接的套接字通信实例313
17.5.1服务器程序313
17.5.2客户端程序316
17.5.3实例程序测试317
17.6小结318
17.7小测试318
第5篇 Linux C项目实战319
第18章 电话本项目的开发319
18.1程序功能分析319
18.2程序的函数319
18.3包含文件320
18.4数据的定义320
18.5菜单函数321
18.6显示电话信息函数322
18.7添加电话号码函数322
18.8按姓名查找函数322
18.9删除电话号码函数323
18.10保存到文件函数324
18.11从文件导入信息函数324
18.12主函数325
18.13程序的运行326
18.14小结327