您好,欢迎光临有路网!
轻松学 Linux编程  轻松学编程
QQ咨询:
有路璐璐:

轻松学 Linux编程 轻松学编程

  • 作者:阎映炳
  • 出版社:化学工业出版社
  • ISBN:9787122149992
  • 出版日期:2012年10月01日
  • 页数:476
  • 定价:¥65.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    《轻松学编程:轻松学Linux编程》内容简介:随着Linux操作系统的广泛使用,与之相关的应用开发正变得日益重要。《轻松学编程:轻松学Linux编程》由浅入深、系统地介绍了在Linux平台下使用C语言进行程序开发的技术,通过丰富的编程实例,使读者快速掌握开发技能。
    《轻松学编程:轻松学Linux编程》分为四篇21章,详细讲解了如何在Linux环境下进行C语言的开发。**篇介绍了Linux的系统环境,主要包括Linux系统概述和shell环境等内容;第二篇介绍了C语言及编程环境,主要包括C语言简介、vi编辑器、gcc编译器、make的使用、程序调试、创建与使用库等内容;第三篇介绍了输入输出及进程管理,包括文件操作、标准输入输出库、界面程序设计(QT和GTK+)、进程、信号等内容;第四篇介绍了进程间通信及网络编程,主要包括管道、消息队列、共享内存、信号量、Linux网络环境和基本套接口编程,*后给出了一个综合实例。
    《轻松学编程:轻松学Linux编程》配光盘一张,内容为本书教学视频、源代码、教学PPT及习题参考答案。
    《轻松学编程:轻松学Linux编程》适合没有编程基础的C语言
    目录
    **篇 系统环境
    第1章 Linux系统概述2
    1.1 计算机操作系统简介2
    1.1.1 操作系统的概念2
    1.1.2 操作系统的基本功能2
    1.1.3 主要操作系统简介3
    1.2 Linux操作系统介绍4
    1.2.1 Linux的来源4
    1.2.2 什么是Linux5
    1.2.3 Linux的特性及优点7
    1.2.4 为什么要选择Linux8
    1.2.5 内核的组成8
    1.3 主流Linux操作系统及发行版本9
    1.3.1 Linux内核的版本10
    1.3.2 Linux的发行版本10
    1.4 小结10
    1.5 习题10
    1.6 上机实训11
    第2章 shell��境12
    2.1 shell介绍12
    2.1.1 shell的种类12
    2.1.2 如何进入shell13
    2.1.3 如何使用shell15
    2.2 shell编程基础16
    2.2.1 创建和运行shell脚本程序16
    2.2.2 shell环境变量16
    2.2.3 常用的shell命令18
    2.2.4 管道与重定向的使用20
    2.2.5 shell变量的使用21
    2.2.6 shell运算符的应用22
    2.2.7 在shell脚本中进行条件控制24
    2.2.8 在shell脚本中使用for循环25
    2.2.9 在shell脚本中使用while循环27
    2.2.10 在shell脚本中使用until循环28
    2.2.11 在shell脚本中使用函数28
    2.3 综合实例29
    2.3.1 实例需求29
    2.3.2 系统设计29
    2.3.3 程序代码30
    2.4 小结34
    2.5 习题34
    2.6 上机实训35
    第二篇 C语言及编程环境
    第3章 C语言简介38
    3.1 C语言概述38
    3.1.1 C语言的发展简史38
    3.1.2 C语言的特点39
    3.2 C语言的组成元素39
    3.2.1 字符集39
    3.2.2 标识符40
    3.2.3 关键字40
    3.2.4 常量的类型41
    3.2.5 变量的类型41
    3.2.6 变量的存储类型42
    3.2.7 变量的作用域44
    3.2.8 运算符44
    3.2.9 注释方法46
    3.3 语句与控制结构46
    3.3.1 表达式语句46
    3.3.2 复合语句46
    3.3.3 函数调用语句46
    3.3.4 控制语句47
    3.4 函数与程序结构51
    3.4.1 库函数51
    3.4.2 用户自定义函数51
    3.5 数组52
    3.5.1 一维数组的定义和使用52
    3.5.2 多维数组的定义和使用53
    3.6 结构55
    3.6.1 结构的定义55
    3.6.2 结构成员的引用56
    3.7 指针56
    3.7.1 指针的概念57
    3.7.2 指针的定义和使用57
    3.7.3 指针变量的运算57
    3.8 综合实例58
    3.8.1 冒泡排序算法原理58
    3.8.2 冒泡排序算法实现59
    3.9 小结61
    3.10 习题62
    3.11 上机实训62
    第4章 vi编辑器65
    4.1 vi编辑器概述65
    4.1.1 vi的启动65
    4.1.2 vi的操作方式65
    4.1.3 vi编辑器的功能键67
    4.1.4 退出vi编辑器68
    4.2 vi编辑器的命令68
    4.2.1 光标移动命令68
    4.2.2 滚动屏幕命令69
    4.2.3 文本编辑命令69
    4.2.4 文本删除命令69
    4.2.5 文本修改命令70
    4.2.6 文本移动命令70
    4.2.7 搜索命令71
    4.2.8 ex转义命令71
    4.3 vi编辑器的选项72
    4.3.1 选项的含义72
    4.3.2 选项的设置方式73
    4.4 小结74
    4.5 习题74
    4.6 上机实训75
    第5章 gcc编译器76
    5.1 编译过程简述76
    5.1.1 预编译过程76
    5.1.2 编译的过程78
    5.1.3 优化及汇编的过程79
    5.2 链接过程简述79
    5.2.1 链接的过程80
    5.2.2 静态链接与动态链接80
    5.3 gcc编译器简述81
    5.3.1 程序的编译与链接81
    5.3.2 gcc编译器的工作过程81
    5.4 gcc编译器语法82
    5.4.1 常用语法82
    5.4.2 用gcc编译器生成可执行文件83
    5.4.3 用gcc编译器生成动态链接库83
    5.4.4 如何使用动态链接85
    5.4.5 gcc编译器常见错误排除85
    5.5 小结86
    5.6 习题86
    5.7 上机实训86
    第6章 make的使用88
    6.1 makefile简介88
    6.2 makefile的书写规则89
    6.2.1 基本语法规则89
    6.2.2 定义变量89
    6.2.3 环境变量90
    6.2.4 通配符的使用90
    6.2.5 使用条件判断91
    6.2.6 在makefile中使用函数92
    6.2.7 使用make与直接使用gcc脚本的区别93
    6.3 make工具93
    6.3.1 运行make命令93
    6.3.2 make命令的工作过程94
    6.3.3 在makefile中使用伪目标94
    6.3.4 make命令的返回值95
    6.4 综合实例95
    6.4.1 makefile应用的环境95
    6.4.2 makefile的实现及解释95
    6.5 小结96
    6.6 习题96
    6.7 上机实训97
    第7章 程序调试98
    7.1 错误处理98
    7.1.1 使用标准错误输出98
    7.1.2 使用errno全局变量99
    7.1.3 使用错误信号处理100
    7.1.4 使用assert断言101
    7.1.5 内存泄露的检查102
    7.1.6 其他可能的内存错误104
    7.2 gdb介绍105
    7.2.1 利用gdb调试的前提105
    7.2.2 启动gdb的方法105
    7.2.3 gdb的基本功能105
    7.3 使用gdb进行调试实例108
    7.4 小结109
    7.5 习题109
    7.6 上机实训109
    第8章 创建与使用库111
    8.1 函数库介绍111
    8.1.1 系统函数库的使用111
    8.1.2 用户自定义函数库的创建和使用112
    8.2 库函数与系统调用114
    8.2.1 系统调用介绍115
    8.2.2 库函数介绍116
    8.3 动态库的创建与使用117
    8.4 综合实例120
    8.5 小结121
    8.6 习题122
    8.7 上机实训122
    第三篇 输入输出及进程管理
    第9章 文件操作126
    9.1 Linux文件系统简述126
    9.1.1 逻辑磁盘分区管理126
    9.1.2 文件系统的建立与挂载127
    9.1.3 虚拟文件系统131
    9.1.4 ext2文件系统131
    9.1.5 文件类型133
    9.1.6 文件权限管理134
    9.2 文件基本操作139
    9.2.1 文件编程的基本概念140
    9.2.2 文件的创建与打开141
    9.2.3 文件的读写146
    9.2.4 文件的关闭与删除148
    9.2.5 文件的随机存取151
    9.3 文件**编程153
    9.3.1 文件的属主和用户组编程153
    9.3.2 设置文件权限(UGO模式)155
    9.3.3 设置文件权限(ACL模式)158
    9.4 文件属性编程162
    9.5 目录编程166
    9.6 综合实例170
    9.6.1 ELF文件格式171
    9.6.2 程序实现171
    9.7 小结175
    9.8 习题176
    9.9 上机实训176
    第10章 标准输入输出库178
    10.1 标准I/O的基本概念178
    10.1.1 流178
    10.1.2 缓存179
    10.1.3 标准输入、标准输出和标准错误输出181
    10.2 使用标准I/O进行文件操作183
    10.2.1 打开关闭流文件183
    10.2.2 单字符方式读写184
    10.2.3 行方式读写185
    10.2.4 二进制方式读写187
    10.2.5 格式化输入 输出189
    10.2.6 在流文件中定位192
    10.3 综合实例193
    10.4 小结197
    10.5 习题197
    10.6 上机实训197
    第11章 界面程序设计——Qt204
    11.1 Qt简述204
    11.1.1 Qt的组成204
    11.1.2 Qt的优点204
    11.2 Qt开发包的安装205
    11.3 Qt集成开发环境介绍206
    11.3.1 启动设计器206
    11.3.2 设计器界面元素介绍206
    11.4 Qt程序开发207
    11.4.1 建立新项目208
    11.4.2 设计窗口208
    11.4.3 添加事件处理209
    11.4.4 添加主程序210
    11.5 Qt程序的生成212
    11.6 小结213
    11.7 习题213
    11.8 上机实训213
    第12章 界面程序设计——GTK+219
    12.1 GNOME与KDE219
    12.1.1 Linux图形界面原理219
    12.1.2 X协议220
    12.1.3 GNOME与KDE的启动220
    12.1.4 GNOME与KDE的区别221
    12.2 使用GTK+进行开发221
    12.2.1 GTK+的安装221
    12.2.2 GTK+程序的初始化与退出222
    12.2.3 GTK+的事件处理222
    12.2.4 使用GTK+实现HelloWorld223
    12.2.5 编译GTK+程序225
    12.2.6 在GTK+中使用控件225
    12.3 综合实例226
    12.3.1 实例需求227
    12.3.2 实例代码及解释227
    12.4 小结228
    12.5 习题229
    12.6 上机实训229
    第13章 进程233
    13.1 进程的基本概念233
    13.1.1 进程的属性233
    13.1.2 进程的内存映像236
    13.1.3 进程组236
    13.1.4 进程的会话238
    13.1.5 进程的控制终端240
    13.1.6 进程的状态241
    13.1.7 进程的优先级242
    13.2 进程的运行环境245
    13.2.1 进程的入口函数245
    13.2.2 进程的环境变量250
    13.2.3 进程的内存分配252
    13.3 进程的创建254
    13.3.1 调用fork创建进程254
    13.3.2 调用exec系列函数执行程序256
    13.3.3 调用system创建进程259
    13.4 进程的终止260
    13.4.1 调用exit退出进程260
    13.4.2 调用wait等待进程退出260
    13.5 小结263
    13.6 习题263
    13.7 上机实训263
    第14章 信号266
    14.1 信号的基本概念266
    14.1.1 信号的定义266
    14.1.2 信号的来源267
    14.1.3 信号的分类267
    14.2 信号的安装及处理269
    14.2.1 信号的处理方式269
    14.2.2 用signal安装信号270
    14.2.3 用sigaction安装信号271
    14.2.4 信号的阻塞处理274
    14.2.5 信号集的操作277
    14.2.6 未决信号的处理277
    14.2.7 等待信号279
    14.2.8 信号处理函数的实现281
    14.3 信号的发送283
    14.3.1 使用kill发送信号283
    14.3.2 使用sigqueue发送信号284
    14.4 SIGALRM信号285
    14.4.1 安装SIGALRM信号285
    14.4.2 设置定时器286
    14.5 SIGCLD信号287
    14.5.1 子进程的退出过程287
    14.5.2 SIGCLD信号的处理288
    14.6 小结290
    14.7 习题290
    14.8 上机实训290
    第四篇 进程间通信(IPC)及网络编程
    第15章 进程间通信——管道294
    15.1 进程间通信概念294
    15.2 管道的概念及分类295
    15.2.1 管道的概念及特点295
    15.2.2 管道的分类296
    15.3 管道编程296
    15.3.1 创建管道296
    15.3.2 读写管道299
    15.3.3 关闭管道301
    15.3.4 管道I/O301
    15.4 命名管道编程303
    15.4.1 创建管道303
    15.4.2 打开管道及读写305
    15.4.3 管道的删除307
    15.5 小结307
    15.6 习题307
    15.7 上机实训307
    第16章 进程间通信——消息队列309
    16.1 SystemV进程间通信概述309
    16.1.1 Shell环境控制IPC309
    16.1.2 进程间通信关键字311
    16.1.3 进程间通信标识符311
    16.1.4 IPC权限许可结构312
    16.2 消息队列基本概念313
    16.2.1 队列313
    16.2.2 消息314
    16.2.3 消息队列314
    16.3 消息队列编程315
    16.3.1 键值生成函数315
    16.3.2 创建消息队列316
    16.3.3 消息发送319
    16.3.4 消息接收322
    16.3.5 控制消息队列323
    16.4 小结326
    16.5 习题326
    16.6 上机实训326
    第17章 进程间通信——共享内存330
    17.1 共享内存基本概念330
    17.1.1 共享内存编程模型330
    17.1.2 共享内存的映射331
    17.1.3 共享内存数据结构331
    17.2 共享内存编程332
    17.2.1 创建共享内存332
    17.2.2 映射共享内存334
    17.2.3 删除共享内存映射336
    17.2.4 控制共享内存336
    17.3 小结339
    17.4 习题339
    17.5 上机实训339
    第18章 进程间通信——信号量342
    18.1 PV操作原理342
    18.1.1 PV操作的来源342
    18.1.2 PV操作的定义343
    18.1.3 PV操作的应用344
    18.2 信号量基本概念346
    18.2.1 Linux信号量简介346
    18.2.2 信号量的控制结构347
    18.3 信号量编程347
    18.3.1 创建信号量347
    18.3.2 信号量操作349
    18.3.3 信号量控制353
    18.4 综合实例——利用信号量实现生产者—消费者模型356
    18.4.1 需求356
    18.4.2 需求分析与设计356
    18.4.3 实现代码及分析357
    18.5 小结360
    18.6 习题360
    18.7 上机实训360
    第19章 Linux网络环境362
    19.1 计算机网络基础362
    19.1.1 计算机网络分类362
    19.1.2 网络拓扑结构363
    19.1.3 网络通信协议364
    19.1.4 OSI参考模型365
    19.2 TCP/IP协议概述367
    19.2.1 TCP/IP分层模型367
    19.2.2 TCP/IP协议族368
    19.2.3 网络地址369
    19.2.4 端口371
    19.3 客户机 服务器模型372
    19.4 传输控制协议374
    19.4.1 连接建立374
    19.4.2 连接关闭374
    19.4.3 TCP数据报格式376
    19.5 用户数据报协议377
    19.6 小结377
    19.7 习题378
    19.8 上机实训378
    第20章 基本套接字编程381
    20.1 套接字编程简述381
    20.1.1 半相关与全相关381
    20.1.2 地址族与协议族382
    20.1.3 面向连接与面向无连接382
    20.1.4 套接字类型383
    20.1.5 字节序383
    20.1.6 套接字连接方式385
    20.1.7 数据传输方式385
    20.2 套接字数据结构386
    20.2.1 套接字地址结构387
    20.2.2 通用套接字地址结构387
    20.2.3 主机名称数据结构388
    20.2.4 服务名称数据结构390
    20.2.5 通用数据收发结构391
    20.3 基本套接字函数392
    20.3.1 字节操作函数392
    20.3.2 字节序操作函数395
    20.3.3 地址转换函数395
    20.3.4 套接字函数398
    20.4 套接字选项415
    20.4.1 套接字选项函数415
    20.4.2 SO_KEEPALIVE选项416
    20.4.3 SO_LINGER选项417
    20.4.4 SO_RCVBUF和SO_SNDBUF选项419
    20.4.5 SO_RCVTIMEO和SO_SNDTIMEO选项420
    20.4.6 SO_REUSEADDR和SO_REUSEPORT选项421
    20.5 TCP套接字编程421
    20.5.1 重复服务器编程421
    20.5.2 并发服务器编程422
    20.6 UDP套接字编程427
    20.6.1 UDP编程模型428
    20.6.2 UDP客户 服务器编程428
    20.7 小结431
    20.8 习题432
    20.9 上机实训432
    第21章 综合实例——银行代理收费服务器436
    21.1 程序需求436
    21.2 程序实现437
    21.3 小结451
    附录1 常见面试题452
    附录2 Linux下常见C函数字母索引470

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外