标签
内容简介
本书以 Ubuntu 11.04 为实践平台,系统地讲解在 Linux 环境下使用 C 语言进行程序设计的方法,并通过大量可直接上机的程序示例,帮助读者从零起步掌握 Linux 平台下的 C 语言开发,逐步具备开发较大规模应用程序的能力。 全书内容覆盖 Linux 基础知识与常用命令、Linux 下的 C 语言开发环境搭建与编译调试工具链(gcc 编译器、make/Makefile 工程管理、autoconf/automake 自动构建、gdb 调试与集成开发环境)、C 语言中文件与目录操作的系统调用、标准 I/O 库函数的使用,以及进程的概念、创建与控制、进程间通信、线程的创建与同步等并发编程主题。在进阶部分进一步介绍基于套接字的网络编程、C 语言访问数据库的方法以及 GTK+/GNOME 图形界面编程的实践。 全书结构安排上由浅入深:先解决“装系统、跑通第一个 Linux C 程序”,再讲清楚编译与工程管理,然后逐层深入到系统调用、进程线程、网络与界面开发,形成从基础操作到综合应用的递进式学习路径。书中代码示例配有说明,随书附 DVD 光盘,包含书中的实例源码等配套资源(所附光盘在当前设备上可能需要外置光驱或在旧系统中读取)。 由于书中平台为 Ubuntu 11.04、工具链与示例年代较早,部分界面与命令细节与当前主流发行版存在差异,但 Linux 系统调用、进程线程模型、套接字编程等核心知识依然通用。
编辑推荐
这本书的定位很清楚:面向“想在 Linux 下写 C”的初学者,把最容易把人卡住的环节(装环境、跑通第一个程序、看懂编译报错、工程怎么组织)都放到了前面解决,而不是一上来就堆系统调用。 它比较难得的几点:一是工具链讲得成体系,gcc、make/Makefile、autoconf/automake、gdb 一路串下来,读者学完能按真实项目的方式组织代码;二是从文件目录操作、标准 I/O 一直递进到进程、进程间通信、线程、套接字网络编程和数据库访问,脉络清晰,适合当作“第一本系统编程书”通读;三是示例密度高,配套光盘给了源码,动手照着敲的收益远大于只看。 需要提醒的是,书中以 Ubuntu 11.04 为平台,部分命令行输出、界面与软件包版本已与现在的发行版不同,GUI 部分(GTK+)的代码也可能需要调整才能编译通过。把它当作概念与调用模型的讲解书、用新版系统做实验,效果最好。
适合谁读
适合
- 已经会一点 C 语言、想从 Windows 转到 Linux 下开发的初学者
- 计算机、电子类专业学生,需要一本能配合课程实验的 Linux C 教材
- 做嵌入式开发的入门者,想搞清楚进程、线程与文件 I/O 的实际用法
- 希望把 gcc、Makefile、gdb 这套工具链真正用起来的自学者
不适合
- 完全没有 C 语言基础、需要先补语法与指针的读者
- 只想研究 Linux 内核源码与内核模块开发的进阶读者
- 寻找最新发行版与现代工具(如 CMake、clang、容器化开发)内容的读者
阅读建议
- 每章照着书中的命令与示例实际敲一遍,遇到报错先自己查 man 手册与 gcc 错误信息。
- 读第2章时把 make/Makefile 写熟,先弄明白工程组织,再进入系统调用部分。
- 书中 Ubuntu 11.04 的示例建议在新版发行版上重做,命令差异可作为一次很好的排错练习。
- 进程、线程、套接字三章建议配合小的动手项目(如简易聊天程序)串联复习。
出版社简介
电子工业出版社
中国 · 成立于 1982 年
电子工业出版社是一家以电子信息及相关领域为出版特色的综合性出版社。从库内三千余种图书来看,其出版方向覆盖编程设计、人工智能、计算机综合、财经、摄影与社科等门类,既关注技术前沿,也兼顾大众阅读。代表图书包括《因子投资:方法与实践》《x86汇编语言:从实模式到保护模式》《RISC-V开放架构设计之道》《人工智能:语音识别理解与实践》《相控阵雷达技术》《雷达目标特性》及《100个Go语言典型错误》等,多围绕技术方法与工程实践展开。作者资源方面,有石川、李忠、王晓波、大卫·帕特森、安德鲁·沃特曼、余子濠等中外作者。受公开资料所限,暂不展开更多出版特色。
目录
- 第1章 Linux基础(Linux简介及发行版;安装虚拟机和Ubuntu;常用命令:shell、文件操作、目录操作、归档压缩、在线帮助、用户操作、关机重启)
- 第2章 Linux下的C编程环境(开发流程;gcc的安装与使用;make与Makefile;autoconf;automake)
- 第3章 Linux文件和目录操作的系统调用
- 第4章 标准I/O库函数的使用
- 第5章 进程概念与进程操作
- 第6章 进程间通信
- 第7章 线程操作与多线程编程
- 第8章 基于套接字的网络编程
- 第9章 C语言数据库编程
- 第10章 GTK+/GNOME图形界面编程
- 第11章 集成开发环境与综合开发实例
常见问题
这本书适用于现在的 Linux 发行版吗?
核心内容(系统调用、进程线程、套接字)完全通用,但书中以 Ubuntu 11.04 为例,安装步骤、界面与部分软件包版本已过时。建议在新版 Ubuntu 或其它发行版上做实验,遇到差异以 man 手册和官方文档为准。
零基础可以直接读吗?
不太建议。书中假定读者已掌握 C 语言基本语法与指针、结构体等内容,重点放在 Linux 平台的开发工具链与系统接口上。完全没有 C 基础的读者最好先用一本 C 语言入门书打过底子。
这本和“Linux C从入门到精通”是同一本书吗?
不是。明日科技著、清华大学出版社出版的《Linux C从入门到精通》是另一本同系列命名的书;本书为刘学勇著、电子工业出版社出版,ISBN 为 9787121174155,切勿混淆。
随书光盘丢了还能学吗?
可以。书中的示例代码基本都在正文里完整给出,照着录入即可;光盘主要是源码与配套资源的便利性补充,不影响主线学习。
读者评论
查询本书
本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。