图书介绍
Linux C编程从初学到精通2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- 华清远见嵌入式培训中心,张繁等编著 著
- 出版社: 北京:电子工业出版社
- ISBN:9787121128042
- 出版时间:2011
- 标注页数:530页
- 文件大小:204MB
- 文件页数:549页
- 主题词:Linux操作系统-程序设计;C语言-程序设计
PDF下载
下载说明
Linux C编程从初学到精通PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1部分 基础篇1
第1章 Linux系统概述1
1.1 什么是Linux2
1.2 Linux系统特点及主要功能2
1.2.1 Linux系统特点3
1.2.2 Linux系统的主要功能3
1.3 Linux的内核版本和发行版本5
1.4 系统的安装6
1.4.1 系统安装前的准备工作6
1.4.2 从光盘安装Linux6
1.4.3 从硬盘安装Linux22
1.4.4 在虚拟机下安装Linux22
1.5 Shell的使用27
1.5.1 Shell简介27
1.5.2 常见Shell的种类28
1.5.3 Shell的简单使用29
1.5.4 通配符30
1.5.5 引号31
1.5.6 注释符33
1.6 Linux常用命令33
1.6.1 与目录相关的命令33
1.6.2 与文件相关的命令34
1.6.3 与网络服务相关的命令35
1.7 本章小结35
实战演练36
第2章 C语言编程基础37
2.1 C语言的历史背景38
2.2 C语言的特点38
2.3 C语言的基本数据类型39
2.3.1 整型39
2.3.2 实型40
2.3.3 字符型41
2.4 运算符与表达式43
2.4.1 算术运算符与算术表达式43
2.4.2 赋值运算符与赋值表达式44
2.4.3 逗号运算符与逗号表达式45
2.5 C程序的3种基本结构46
2.5.1 顺序结构46
2.5.2 选择结构47
2.5.3 循环结构51
2.6 C语言中的数据输入与输出54
2.6.1 字符输出函数putchar54
2.6.2 字符输入函数getchar54
2.6.3 格式输出函数printf54
2.6.4 格式输入函数scanf56
2.7 函数57
2.7.1 函数的定义57
2.7.2 函数的调用58
2.7.3 变量的存储类别59
2.8 数组62
2.8.1 一维数组的定义和使用63
2.8.2 二维数组的定义和使用64
2.8.3 字符数组和字符串65
2.8.4 常用字符串处理函数66
2.9 指针69
2.9.1 地址和指针69
2.9.2 指针的定义和使用70
2.9.3 数组与指针71
2.9.4 字符串与指针72
2.9.5 指向函数的指针72
2.10 结构体和共用体73
2.10.1 定义和引用结构体73
2.10.2 结构体数组74
2.10.3 指向结构体的指针74
2.10.4 共用体75
2.10.5 使用typedef定义类型77
2.11 链表77
2.11.1 链表概述77
2.11.2 建立动态单向链表78
2.11.3 单向链表的输出80
2.11.4 对单向链表的删除操作80
2.11.5 对单向链表的插入操作81
2.11.6 循环链表82
2.11.7 双向链表82
2.12 位运算符和位运算83
2.12.1 “按位与”运算符(&)84
2.12.2 “按位或”运算符(|)84
2.12.3 “取反”运算符(~)84
2.12.4 “异或”运算符(^)84
2.12.5 移位运算符(<<和>>)85
2.12.6 位域85
2.13 C语言预处理命令86
2.13.1 宏定义86
2.13.2 文件包含87
2.13.3 条件编译88
2.13.4 #error等其他常用预处理命令89
2.14 本章小结89
实战演练89
第3章 vi与Emacs编辑器91
3.1 vi的使用92
3.1.1 启动与退出vi92
3.1.2 vi的命令行模式93
3.1.3 vi的插入模式96
3.1.4 vi的底行模式96
3.2 vi使用实例97
3.3 Emacs的使用100
3.3.1 启动与退出Emacs101
3.3.2 Emacs下的基本操作102
3.4 Emacs使用实例107
3.5 本章小结109
实战演练109
第4章 gcc编译器与gdb调试器110
4.1 gcc编译器简介111
4.2 如何使用gcc112
4.2.1 gcc编译初步112
4.2.2 警告提示功能114
4.2.3 优化gcc116
4.2.4 连接库119
4.2.5 同时编译多个源程序120
4.2.6 管道120
4.2.7 调试选项121
4.3 gdb调试器122
4.3.1 gdb简介122
4.3.2 gdb常用命令123
4.3.3 gdb调试初步124
4.4 gdb的使用详解126
4.4.1 调用gdb127
4.4.2 使用断点127
4.4.3 查看运行时数据129
4.4.4 查看源程序133
4.4.5 改变程序的执行135
4.5 xxgdb调试器简介138
4.6 本章小结139
实战演练139
第5章 make的使用和Makefile的编写141
5.1 什么是make142
5.1.1 make机制概述142
5.1.2 make与Makefile的关系144
5.2 Makefile的书写规则147
5.2.1 Makefile的基本语法规则148
5.2.2 在规则中使用通配符149
5.2.3 伪目标149
5.2.4 多目标151
5.2.5 自动生成依赖性151
5.3 Makefile的命令152
5.4 变量154
5.4.1 变量的基础154
5.4.2 赋值变量154
5.4.3 define关键字156
5.4.4 override指示符156
5.4.5 目标变量和模式变量157
5.5 常用函数调用158
5.5.1 字符串处理函数158
5.5.2 文件名操作函数162
5.5.3 循环函数164
5.5.4 条件判断函数165
5.5.5 其他常用函数166
5.6 隐式规则168
5.6.1 隐式规则举例168
5.6.2 隐式规则中的变量169
5.6.3 使用模式规则170
5.7 本章小结173
实战演练173
第2部分 提高篇174
第6章 文件I/O操作174
6.1 Linux文件系统简介175
6.1.1 Linux的文件系统结构175
6.1.2 文件类型176
6.1.3 文件访问权限179
6.2 基于文件描述符的I/O操作179
6.2.1 文件描述符180
6.2.2 标准输入、标准输出和标准出错180
6.2.3 文件重定向181
6.2.4 文件的创建、打开与关闭182
6.2.5 文件的定位186
6.2.6 文件的读写188
6.3 文件的属性操作192
6.3.1 改变文件访问权限192
6.3.2 改变文件所有者193
6.3.3 重命名193
6.3.4 修改文件长度194
6.4 文件的其他操作195
6.4.1 stat、fstat和lstat函数195
6.4.2 dup和dup2函数196
6.4.3 fcntl函数197
6.4.4 sync和fsync函数197
6.5 特殊文件的操作198
6.5.1 目录文件的操作198
6.5.2 链接文件的操作201
6.5.3 管道文件的操作204
6.5.4 设备文件204
6.6 本章小结205
实战演练205
第7章 基于流的I/O操作206
7.1 流与缓存207
7.1.1 流和FILE对象207
7.1.2 标准输入、标准输出和标准出错207
7.1.3 缓存207
7.1.4 对缓存的操作210
7.2 流的打开与关闭212
7.2.1 流的打开212
7.2.2 流的关闭214
7.2.3 流关闭前的工作216
7.3 流的读写216
7.3.1 基于字符的I/O217
7.3.2 基于行的I/O220
7.3.3 直接I/O222
7.3.4 格式化I/O224
7.4 本章小结226
实战演练227
第8章 进程控制228
8.1 进程的基本概念229
8.1.1 Lnux进程简介229
8.1.2 进程与作业230
8.1.3 进程标识230
8.2 进程控制的相关函数232
8.2.1 fork和vfork函数232
8.2.2 exec函数237
8.2.3 exit和_exit函数242
8.2.4 wait和waitpid函数245
8.2.5 进程的一生251
8.2.6 用户ID和组ID251
8.2.7 system函数253
8.3 多个进程间的关系255
8.3.1 进程组255
8.3.2 会话期256
8.3.3 控制终端257
8.4 本章小结259
实战演练259
第9章 信号260
9.1 Linux信号简介261
9.1.1 信号的基本概念261
9.1.2 信号处理机制265
9.2 信号操作的相关函数267
9.2.1 信号的处理267
9.2.2 信号的发送274
9.2.3 信号的阻塞282
9.2.4 计时器与信号284
9.3 本章小结286
实战演练287
第10章 进程间通信288
10.1 进程间通信简介289
10.2 管道290
10.2.1 管道的概念290
10.2.2 管道的创建与关闭291
10.2.3 管道的读写292
10.3 命名管道297
10.3.1 命名管道的概念297
10.3.2 命名管道的创建297
10.3.3 命名管道的读写299
10.4 消息队列303
10.4.1 消息队列的概念303
10.4.2 消息队列的创建与打开305
10.4.3 消息队列的读写306
10.4.4 获得或设置消息队列属性308
10.5 共享内存312
10.5.1 共享内存的概念312
10.5.2 共享内存的相关操作313
10.6 信号量318
10.6.1 信号量的概念319
10.6.2 信号量集的相关操作320
10.7 本章小结325
实战演练326
第11章 网络编程327
11.1 网络编程的基础知识328
11.1.1 计算机网络体系结构328
11.1.2 传输控制协议TCP333
11.1.3 用户数据报协议UDP335
11.1.4 客户机/服务器模式336
11.2 套接口编程基础336
11.2.1 什么是套接口337
11.2.2 端口号的概念338
11.2.3 套接口的数据结构338
11.2.4 基本函数340
11.3 TCP套接口编程343
11.3.1 TCP套接口通信工作流程343
11.3.2 TCP套接口Client/Server程序实例356
11.4 UDP套接口编程360
11.4.1 UDP套接口通信工作流程360
11.4.2 UDP套接口Client/Server程序实例362
11.5 原始套接口编程365
11.5.1 原始套接口的创建365
11.5.2 原始套接口程序实例365
11.6 本章小结376
实战演练376
第12章 Linux图形界面编程377
12.1 Linux下的图形界面编程简介378
12.1.1 Qt简介378
12.1.2 GTK+简介378
12.2 界面基本元件381
12.2.1 一个简单的例子381
12.2.2 窗口383
12.2.3 标签385
12.2.4 按钮386
12.2.5 文本框387
12.3 界面布局元件389
12.3.1 表格390
12.3.2 框393
12.3.3 窗格395
12.4 其他常用元件398
12.4.1 进度条、微调按钮、组合框398
12.4.2 单选按钮、复选按钮402
12.4.3 下拉菜单404
12.5 信号与回调函数406
12.6 本章小结409
实战演练409
第3部分 实战篇411
第13章 设计Linux下的计算器411
13.1 软件功能分析412
13.2 程序模块的划分413
13.3 软件的具体实现415
13.3.1 头文件415
13.3.2 十六进制界面显示函数416
13.3.3 十进制界面显示函数417
13.3.4 八进制界面显示函数418
13.3.5 二进制界面显示函数419
13.3.6 进制间转换函数420
13.3.7 信号处理模块423
13.3.8 主函数432
13.4 软件使用效果演示438
13.5 本章小结439
第14章 Linux平台下聊天软件的设计440
14.1 软件功能概述441
14.1.1 服务器端功能需求441
14.1.2 客户端功能需求442
14.1.3 错误处理需求442
14.2 Glade集成开发工具简介443
14.3 软件功能模块划分444
14.3.1 服务器功能模块划分444
14.3.2 客户端功能模块划分445
14.3.3 消息标识的定义445
14.3.4 消息结构体的设计446
14.4 服务器程序的具体实现447
14.4.1 服务器消息处理流程447
14.4.2 服务器主要函数和变量448
14.4.3 服务器消息处理模块的设计与实现449
14.4.4 服务器数据存储的方法450
14.4.5 用户注册流程450
14.5 客户端程序的具体实现451
14.5.1 客户端操作流程451
14.5.2 客户端发送和接收消息流程451
14.5.3 客户端主要函数和变量452
14.5.4 客户端功能模块的设计与实现453
14.6 聊天软件使用效果演示455
14.7 本章小结459
第15章 Linux远程管理工具的设计460
15.1 软件功能概述461
15.1.1 Webmin简介461
15.1.2 软件总体设计461
15.2 服务器端程序设计463
15.2.1 服务器端工作流程463
15.2.2 系统用户管理操作464
15.2.3 系统用户组的管理操作466
15.2.4 系统服务启动管理468
15.2.5 DNS管理操作469
15.2.6 Apache服务管理操作471
15.2.7 FTP服务管理操作474
15.3 客户端程序475
15.3.1 连接界面475
15.3.2 主界面477
15.4 本章小结479
第16章 Linux下简易防火墙软件的设计480
16.1 Netfilter基础481
16.1.1 什么是Netfilter481
16.1.2 Netfilter的HOOK机制482
16.1.3 HOOK的调用485
16.1.4 HOOK的实现486
16.1.5 IPTables简介488
16.1.6 Netfilter可以实现的控制功能489
16.2 软件设计概述491
16.2.1 软件整体框架491
16.2.2 管理端的设计492
16.2.3 控制端的设计493
16.3 用Netfilter设计控制端功能模块495
16.3.1 ICMP管理控制模块495
16.3.2 FTP管理控制模块497
16.3.3 HTTP管理控制模块499
16.3.4 模块的编译、加载与卸载499
16.4 软件功能测试501
16.5 本章小结503
第17章 基于Linux的嵌入式家庭网关远程交互操作平台的设计504
17.1 嵌入式技术简介505
17.1.1 嵌入式系统的概念505
17.1.2 嵌入式操作系统506
17.1.3 嵌入式处理器507
17.2 家庭网关的概念及其网络体系结构509
17.2.1 智能家庭网络的概念509
17.2.2 家庭网关的远程交互操作技术简介510
17.2.3 嵌入式家庭网关的网络体系结构510
17.3 嵌入式家庭网关的开发平台511
17.3.1 S3C2410微处理器简介511
17.3.2 交叉编译环境的建立513
17.4 远程交互平台的设计515
17.4.1 应用软件的开发模式515
17.4.2 嵌入式Web服务器516
17.4.3 通用网关接口CGI519
17.5 Linux下软件模块的具体实现520
17.5.1 登录验证模块521
17.5.2 串口通信模块521
17.5.3 中央空调控制模块522
17.5.4 智能水表数据采集模块528
17.5.5 试验结果528
17.6 本章小结529
热门推荐
- 2528765.html
- 3189662.html
- 2570136.html
- 2862721.html
- 2322463.html
- 272963.html
- 2754777.html
- 870008.html
- 1817476.html
- 2141973.html
- http://www.ickdjs.cc/book_1499904.html
- http://www.ickdjs.cc/book_1876055.html
- http://www.ickdjs.cc/book_1645269.html
- http://www.ickdjs.cc/book_641724.html
- http://www.ickdjs.cc/book_2540041.html
- http://www.ickdjs.cc/book_915231.html
- http://www.ickdjs.cc/book_3265609.html
- http://www.ickdjs.cc/book_2175639.html
- http://www.ickdjs.cc/book_2095484.html
- http://www.ickdjs.cc/book_885192.html