从零开始学Linux编程(含DVD光盘1张)

百科

《从零贵程能象方牛云议开始学Linux编程(含DVD来自光盘1张)》是2012年电子工业出版社出版的图书,作者是罗利民,王浩。

  • 中文名 从零开始学Linux编程(含DVD光盘1张)
  • 出版社 电子工业出版社
  • 作者 罗利民,王浩
  • 出版时间 2012-6-1

基本信息

作 者:罗利民,王浩 编著

  出 版 社:电子工业出版社 

来自  出版时间:2012-6-1

  版 次:1

  页 数:327

  印刷时间:2012-6-1

  开 本:16开

内容简介

Linux系统可以免费地应用到多种服务器上,所以开发人员都在往Linux系统上补限表吗士除限犯家氧转移,且很多开发都是使用C语言来完成的,这也是本书推出的关键所在。本书共分为五篇:第一篇是Li360百科nux系统知识,讲述L损挥朝司器短司inux系统的安装和使亚触范关专义死察领鲜用、常用命令、文本编辑器及程序的编译与调试;第二篇是C语言基本知识,讲述C语言的基本语法、指针、结构体、系统库函数等知识;第三篇是Linux系统编程,讲述Shell编程和文件处理方法;第四篇是Linu强鱼底达座千与试务掌奏x网络编程,讲解TCP和UDP网络编程的知识;第五篇是Linux C项目实战,通过案例的学习,既复习了前面介绍的知识,也了解了项目实践的流程和技巧,从而增加读者的编辑经验。

目录

目 录

  第1篇 Linux系统知

  第1章 认识Linux系统 1

  1.1 Linux发行版的介绍 1

  1.1.1 Red Hat Linux 1

  1.1.2 Debian Linux 1

  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

  分区中引导Linux 13

  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 编译程360百科序 25

  1.5 小结 26

  1.6 小测试 26

  第2章 常用的Linux操作命令 28

  2.1 目录与文件命令 28

  2.1.1 查看目录命令pwd 28

  2.1.2 打开目录命令c附照评项洋信庆未局d 28

  2.1.3 查看目录命令ls 29

  2.1.4 建立文件命令touch 30

  2.1.5 建角普立与删除文件夹

  命令mkdir、rmdir 30

  2.1.6 文件复制命令cp 31

  2.1.7 文件移动和更名

  命令mv 32

  2.1.8 删除文件与目录

  命令rm 32

  2.1.9 创建链接命令ln 33

  2.1.10 查看文件信息

  命令wc 33

  2.1.11 文件坏绿旧型序进赵吧约民场查看命令cat 34

  2.1.12 查看文件视图

  命令head与tail 34

  2.1.13 文件权限设置

  命令chmod 35

  2.1.14 查找文件命令find 36

  2孙华缩用.2 man系统帮助命令 3敌育某杆圆看表清量6

  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 带菜单的G宗走帮无滑副液请VIM 48

  3.3.1 文件的新建与保存 48

  3.3.2 查找与替换 49

  3.4 图形化的ged那核只it 50

  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 启动gdb 65

  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语言基本知识

  第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 浮点型(float) 83

  5.2.3 字符型(char) 84

  5.2.4 变量名 85

  5.2.5 字符NULL 86

  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 转移控制语句:

  continue 105

  6.1.10 转移控制语句:

  break 106

  6.1.11 转移控制语句:

  return 106

  6.2 流程控制语句实例 107

  6.2.1 三个数字的排序 107

  6.2.2 解一元二次方程 108

  6.3 两种特殊语句结构 111

  6.3.1 三元操作符 111

  6.3.2 块语句 112

  6.4 小结 112

  6.5 小测试 112

  第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与argv 145

  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 字符串复制函数

  strncpy() 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系统编程

  第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() 251

  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网络编程

  第15章 网络编程 269

  15.1 网络编程的基本概念 269

  15.1.1 IP地址 269

  15.1.2 端口 270

  15.1.3 域名 270

  15.1.4 TCP与UDP 270

  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 建立socket 287

  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项目实战

  第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

标签:
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com

评论留言

我要留言

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com