说明
- 本文的目的是帮助学习C/C++,快速切入,从而拥有独立在linux或者windows上开发的能力。所以只推荐最适合的书籍,当然推荐的每一本书都非常经典,评分都很高(每本书都带上了豆瓣评分)。所以本文会删减掉很多C/C++书籍,并不代表他们不经典。
C
-
嗨翻C语言
豆瓣9.2,轻松学习C语言,适合零基础。

-
C程序设计语言
豆瓣9.4,两位重量级的作者(一个是C语言之父兼UNIX之父,另一个可能是最好的程序界作家,看到他写的书,你就应该有自信可以读懂这本书)造就了这本独一无二的书籍,怎么吹嘘这本书都不过分,Hello World就是出自这本书。

-
C和指针
豆瓣9.0,很适合入门C语言,对待指针(C语言的核心)讲的很细致,而且几乎覆盖了所有重要的C编程话题。

C++
我承认跳过C语言,直接开始C++的学习也是可以的,但是如果有C语言的基础,对C++的学习还是非常有帮助的。C++是一门庞大的语言,本文并不会深入推荐其他经典C++书籍。
-
C++ Primer
豆瓣9.2,目前已经出了第5版,增加了C++11标准。这本书虽然叫入门,但是读起来并不简单,注意不要和另外一本C++书籍《C++Primer Plus》搞混了。

-
C++程序设计语言
作者是C++之父,C++领域中最具权威的书籍,当然读起来并不容易。

链接与库
- 程序员的自我修养
豆瓣8.8,本书主要是将链接,装载与库,这部分内容实在是太重要了,读完就可以对静态库、动态库有一个清晰的理解,而且对于实践中的碰到的各种编译问题有很好的帮助。

Linux/Unix平台API
学习完C语言的基础理论只是开始,毕竟C的语法还是相对简单的,后续应该熟悉相应平台的API,毕竟C标准库的功能还是很有局限性。
-
UNIX环境高级编程
豆瓣9.4,目前已经到第三版,名字虽然是UNIX,但是其实也适用于Linux,最经典的UNIX/Linux API书籍。

-
UNIX网络编程 卷1
豆瓣9.2,名字虽然是UNIX,但是其实也适用于Linux,这本书是最好的linux网络socket编程书籍,学习之前需要TCP/IP协议基础,当然作者的《TCP/IP详解 卷1》非常详细的描述了这块的知识

-
UNIX网络编程 卷2
豆瓣9.5,名字虽然是UNIX,但是其实也适用于Linux,主要介绍进程间通信,个人认为不应该叫网络编程。

-
Linux/UNIX系统编程手册
豆瓣9.4,可以和《UNIX环境高级编程》相媲美,而且更加的详细。可以说是《UNIX环境高级编程》+《UNIX网络编程卷2》的结合体。当然不包括《UNIX网络编程卷1》,毕竟卷1的网络socket编程是独一无二的。

-
TCP/IP网络编程
豆瓣8.6,没有《UNIX网络编程卷1》权威和详细,但是更适合入门,而且同时介绍了Linux和windows的API。

Windows平台API
- Windows程序设计
豆瓣9.0,Windows编程圣经。

设计模式
- Head First 设计模式
豆瓣9.2,这本书虽然是用Java描述的,但是熟悉C++语法(毕竟Java号称是C++ --)后完全可以开始看这本书,因为学习设计模式需要注意思想,而不是纠结了语言的细节,当然如果有Java基础更好,而且网上也很容易找到C++实现。

跨平台
Qt还是使用很广泛的,你可以看到很多windows软件,比如游戏平台(11、魔兽官方平台等)的目录中都有Qt5Core.dll
- C++GUI Qt4编程
豆瓣8.0,虽然Qt4已经比较旧了,但是这本书还是最好的Qt书籍。

本文推荐了一系列C/C++编程的经典书籍,从C语言入门到C++深入,再到链接与库、Linux/Unix及Windows平台API的学习,涵盖设计模式和跨平台开发,旨在帮助程序员快速提升技能,具备独立开发能力。
6万+

被折叠的 条评论
为什么被折叠?



