《Linux软件工程师 C语言 实用教程 修订版》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:刘加海,张益先主编
  • 出 版 社:北京:科学出版社
  • 出版年份:2007
  • ISBN:9787030199645
  • 页数:383 页
图书介绍:本书介绍了Linux环境下程序调试方法(Gcc编译器、gdb调试器、make的使用), Linux环境下用C语言实现的文件操作、标准I/O库、进程控制、进程间的通信、Linux的图形编程、网络编程以及数据库编程。

第0章 开源文化概述 1

0.1 开源文化概述 2

0.1.1 开源文化 2

0.1.2 关于黑客 2

0.2 开源软件与自由软件 3

0.3 开源教育模式 3

0.3.1 开放教育资源 4

0.3.2 开放教育发展 4

0.3.3 开源教育模式 4

第1章 Linux系统程序设计基础 6

1.1 第一个Linux C程序 7

1.2 gcc编译器 9

1.2.1 使用gcc 9

1.2.2 gcc编译流程 11

1.2.3 gcc编辑器的主要参数 14

1.3 gdb调试器 21

1.3.1 gdb概述 22

1.3.2 使用gdb调试程序 22

思考与实验 28

第2章 文件分割和多文件编译 29

2.1 函数 30

2.1.1 函数简介 30

2.1.2 返回值 31

2.2 文件分割 33

2.3 make工程管理器 36

2.3.1 编写makefile文件 37

2.3.2 makefile变量的使用 41

2.3.3 make和makefile 46

思考与实验 48

第3章 LinuX环境下系统函数的使用 50

3.1 数学函数的使用 51

3.2 字符函数的使用 54

3.3 系统时间与日期函数的使用 57

3.4 环境控制函数 60

3.5 内存分配函数 63

3.6 数据结构中常用函数 68

思考与实验 71

第4章 文件的操作 72

4.1 Linux系统文件的属性 73

4.1.1 Linux文件类型 73

4.1.2 Linux文件权限 75

4.1.3 Linux文件的其他属性 79

4.2 不带缓存的文件I/O操作 80

4.2.1 文件的创建 81

4.2.2 文件的打开和关闭 82

4.2.3 文件的读写操作 84

4.2.4 文件上锁 86

4.3 带缓存的流文件I/O操作 90

4.3.1 流文件的打开和关闭 91

4.3.2 流文件的读写操作 93

4.3.3 文件的定位 99

4.4 特殊文件的操作 100

4.4.1 目录文件的操作 101

4.4.2 链接文件的操作 103

思考与实验 105

第5章 串行通信 107

5.1 串行通信概述 108

5.2 串行通信程序的设计 108

5.2.1 串行通信程序设计流程 108

5.2.2 打开通信端口 108

5.2.3 设置串口属性 110

5.2.4 串口通信程序设计主要语句说明 112

思考与实验 118

第6章 进程控制 119

6.1 进程简介 120

6.2 Linux进程控制 121

6.2.1 进程的相关函数 123

6.2.2 进程创建 123

6.2.3 进程终止 131

6.2.4 僵尸进程 133

6.3 Linux守护进程 141

6.3.1 守护进程及其特性 141

6.3.2 编写守护进程的要点 142

6.3.3 守护进程的编写 143

思考与实验 150

第7章 进程间的通信 152

7.1 信号 153

7.1.1 信号及其使用简介 153

7.1.2 信号操作的相关函数 155

7.2 管道 165

7.2.1 低级管道操作 165

7.2.2 高级管道操作 169

7.2.3 命名管道 171

7.3 消息队列 176

7.4 共享内存 180

7.4.1 mmap系统调用 181

7.4.2 系统V共享内存 183

思考与实验 187

第8章 网络程序设计 189

8.1 TCP/IP简介 190

8.1.1 TCP/IP概述 190

8.1.2 TCP/IP模块结构 190

8.2 网络编程 191

8.2.1 socket简介 191

8.2.2 socket套接口简介 191

8.2.3 socket套接口的数据结构 191

8.2.4 TCP编程 192

8.2.5 UDP编程 201

8.3 网络高级编程 207

思考与实验 216

第9章 Linux的图形编程 218

9.1 Linux的图形编程简介 219

9.2 安装和使用SDL图形开发库 219

9.3 初始化图形模式 220

9.4 基本绘图函数的应用 225

9.5 图片与文字显示 236

9.6 动画 243

9.7 三维绘图 247

9.8 游戏程序入门 255

思考与实验 266

第10章 数据库编程 267

10.1 Linux环境下数据库简介 268

10.2 MySQL的使用 268

10.3 常用API函数简介 272

10.3.1 C API数据类型 273

10.3.2 C API函数 273

10.4 Linux下的MySQL数据库简单应用 285

思考与实验 290

第11章 Qt编程 291

11.1 Qt简介 292

11.1.1 Qt的安装 292

11.1.2 Qt的编译器qmake 292

11.1.3 Qt中的action 292

11.1.4 Qt中的信号-槽机制 292

11.2 Qt Designer设计器 293

11.2.1 启动Qt Designer 293

11.2.2 Qt Designer设计器的应用 293

11.3 Qt应用实例 297

思考与实验 300

第12章 综合设计 301

12.1 记事本程序设计 302

12.1.1 创建工程 303

12.1.2 创建主窗体 303

12.1.3 添加工具条、菜单和文本编辑区域 306

12.1.4 消息映射 312

12.1.5 消息处理函数 314

12.1.6 编译运行及测试 318

12.2 编写FTP客户端 320

12.2.1 设计地址簿模块 322

12.2.2 设计本地端口扫描模块 337

12.2.3 设计FTP客户端模块 350

附录 376

附录1 SDL库的安装 376

附录2 mysql开发包的安装 380

附录3 Qt的安装 380

主要参考文献 383