书单 | 嵌入式、C语言编程书籍
扫描二维码
随时随地手机看文章
偶尔有读者让我推荐关于嵌入式编程的书籍,今天就为大家推荐一些经典的“零基础入门和进阶提高”的书籍。
关于C语言
先看C语言的历史;1973 年,KenThompson 和 DennisRitchie 在做系统内核移植开发时,感觉使用汇编语言很难实现。后来决定使用一种称为 BCPL的语言进行开发,在开发过程中,他们在 BCPL 的基础上做了进一步的改进,推出了 B 语言(取 BCPL 第一个字母)。后来发现使用 B 语言开发的 UNIX 内核,还是无法达到他们的预期要求,于是在 B 语言的基础上,做了进一步的改进,设计出了具有丰富的数据类型,并支持大量运算符的编程语言。改进后的语言较B语言有质的飞跃,1970年左右,取名为 C 语言,并使用 C 语言成功重新编写了 UNIX内核。这也是为什么UNIX的时间戳默认是从1970年1月1日开始;C/C 无处不在,到底能做哪些事情呢?
- 大多数操作系统内核都是用C编写的,包括但不限于Windows,Linux,Mac,iOS,Android等。
- 现代浏览器也是用C/C 编写的。像Chrome,Firefox等。
- 现代游戏引擎是用C/C 编写的,例如Unity3D,虚幻引擎,cocos2d-x等。
- 编程语言的编译器和解释器也是用C/C 实现的。
- C Primer Plus
- Linux C编程一站式学习
- C 和指针
- C 程序设计语言
- 深入理解C指针
- C 专家编程
- C 陷阱与缺陷
- C 语言的科学和艺术
- C 语言程序设计现代方法
- C 语言接口与实现
- 数据结构与算法分析——C语言描述
- UNIX环境高级编程(第3版)
- Linux程序设计
C Primer Plus
《C Primer Plus(第5版)(中文版)》是C语言书最好的入门书籍之一,0基础完全可以。
可以说是满分入门书籍,内容循序渐进,这本书重要的不止是让你学会了C语言,更重要的是能够锻炼你的编程思想,这对以后的学习很有帮助。
遇到看不懂的地方多看几遍,再看不懂就先跳过,有时候一回头就突然懂了。
如果想把C当作吃饭的技能,除了这本书,还必须要再补一下数据结构和算法方面的知识。
Linux C编程一站式学习
本书有两条线索:
- 一条线索是以Linux平台为载体全面深入地介绍C语言的语法和程序的工作原理;
- 另一条线索是介绍程序设计的基本思想和开发调试方法。
- 第一部分讲解编程语言和程序设计的基本思想方法,让读者从概念上认识C语言;
- 第二部分结合操作系统和体系结构的知识讲解程序的工作原理,让读者从本质上认识C语言。
C 和指针
这本书和《专家编程》《C缺陷和陷阱》可以并称C语言(进阶书)三杰;这本书提供与C语言编程相关的全面资源和深入讨论,由浅入深;它涵盖了C语言的全部内容,特别注重指针的讲解,除了头尾的几章,指针的话题几乎是贯穿了全书。正是指针使得C语言如此之强大,所以要学习C语言的精髓,就是要精通指针!
C 程序设计语言
在计算机发展的历史上,没有哪一种程序设计语言像C语言这样应用广泛。本书作者是C语言之父,相当经典,“hello,World"程序就是由本书首次引入的。不过读这本书,我们得有一些unix like系统的操作经验,需要知道文件描述符,输入输出流,重定向,管道以及”anything is file“等在unix世界里这些归为常识的概念;这些离我们这些在windows的世界里长大的一辈太远。
深入理解C指针
深入理解C指针和内存管理,提升编程效率!这是一本实战型图书,通过它,读者可以掌握指针动态操控内存的机制、对数据结构的增强支持,以及访问硬件等技术。
C 专家编程
虽然是技术类书籍,但是作者很幽默,书里面八卦比较多,趣味性比较强;同时也展示了优秀的C程序员所使用的编码技巧,并专门开辟了一章对C 的基础知识进行了介绍。对于有一定经验的C程序员会很有帮助;对于C语言功底深厚的程序员,本书可以帮助他们站在C的高度了解和学习C 。
C 陷阱与缺陷
作者以自己1985年在Bell实验室时发表的一篇论文为基础,结合自己的工作经验扩展成为这本对C程序员具有珍贵价值的经典著作。写作本书的出发点不是要批判C语言,而是要帮助C程序员绕过编程过程中的陷阱和障碍。本书适合有一定经验的C程序员阅读学习,即便你是C编程高手,本书也应该成为你的案头必备书籍。正如书上所说,“本书所揭示的知识,至少能够帮助你减少C代码和初级C 代码中90%的Bug”,我觉得这并不夸张。
C 语言的科学和艺术
《C语言的科学和艺术》是一本C语言经典教材,强调软件工程和优秀的程序设计风格。此外,读者还可以从书中学习到ANSIC的基础知识,这些内容已经成为计算机行业的标准。作者的写作风格使得书中深奥的概念变得易于理解和引人入胜。这本书集中讨论库和抽象的用法,这是当代程序设计技术中最基本的知识。使用库来隐藏C语言的复杂性,更加突出主题,使读者可以较好地掌握每一个主题的精髓。然后,进一步给出每个库的底层实现,较好地展示了库自身的抽象威力。
C 语言程序设计现代方法
《C语言程序设计现代方法》最主要的一个目的就是通过一种“现代方法”来介绍C语言,实现客观评价C语言、强调标准化C语言、强调软件工程、不再强调“手工优化”、强调与c 语言的兼容性的目标。《C语言程序设计现代方法》分为C语言的基础特性。C语言的高级特性、C语言标准库和参考资料4个部分。每章都有“问与答”小节,给出一系列与本章内容相关的问题及其答案,此外还包含适量的习题。
C 语言接口与实现
《C语言接口与实现:创建可重用软件的技术》概念清晰、实例详尽,是一本有关设计、实现和有效使用C语言库函数,掌握创建可重用C语言软件模块技术的参考指南。书中提供了大量实例,重在阐述如何用一种与语言无关的方法将接口设计实现独立出来,从而用一种基于接口的设计途径创建可重用的API。
数据结构与算法分析——C语言描述
本书是《Data Structures and Algorithm Analysis in C》一书第2版的简体中译本。原书曾被评为20世纪顶尖的30部计算机著作之一,作者Mark Allen Weiss在数据结构和算法分析方面卓有建树,他的数据结构和算法分析的著作尤其畅销,并受到广泛好评.已被世界500余所大学用作教材。在本书中,作者更加精炼并强化了他对算法和数据结构方面创新的处理方法。通过C程序的实现,着重阐述了抽象数据类型的概念,并对算法的效率、性能和运行时间进行了分析。
UNIX环境高级编程
《UNIX环境高级编程》被誉为UNIX编程“圣经”。经典中的经典。不过看这本书的前提是你熟悉linux,哪怕不是使用linux接口编程,至少要用过,了解shell,gcc,vim。所以适合有一些基础的读者。
Linux程序设计
时至今日,Linux系统发展越来越成熟,因为具备跨平台、开源、支持众多应用软件和网络协议等优点,它得到了各大主流软硬件厂商的支持,也成为广大程序设计人员理想的开发平台。本书是Linux程序设计领域的经典名著,以简单易懂、内容全面和示例丰富而受到广泛好评。中文版前两版出版后,在国内的Linux爱好者和程序员中也引起了强烈反响,这一热潮一直持续至今。
免责声明:本文素材来源网络,版权归原作者所有。如涉及作品版权问题,请与我联系删除。
------------ END ------------