美文网首页C
如何学好C语言

如何学好C语言

作者: KotInstall | 来源:发表于2018-09-21 17:02 被阅读0次

0 - C

C by 丹尼斯·里奇

1 - 前言

  • 编程到一定的时候,发现能力到瓶颈,既不深,也不扎实,半吊子。

  • 长期使用Java和.NET ,有虚拟机的语言对于开发便利,

    但是弊端是:

    • 虚拟机屏蔽了操作系统的系统调用,以及很多底层机制。

    • 大量的封装好的类库也屏蔽了很多实现细节。

  • 一段时间后,你会发现你知其然,不知所以然。

  • 程序员不懂底层实现,所以很难把技术学得更扎实。

  • 要学习底层的技术,很自然的,C语言就被提了上来。

2 - C语言和系统编程

学好编程有四个方面:语言、算法和数据结构、系统调用和设计。

  • 语言。C语言有两大主题,一个是内存管理,一个是指针!

    • 这个世界上90%以上的C/C++出的严重性错误全是和这两个有关。

    • 推荐《C程序设计语言(第2版·新版)》

      • 作者: (美)Brian W.Kernighan,Dennis M.Ritchie

      • 译者: 徐宝文 李志

      • 原书名:The C Programming Language

  • 算法和数据结构。

    • C语言实现(第1~4部分)基础知识、数据结构、排序及搜索(原书第3版)

      • Algorithms in C, Parts 1-4: Fundamentals, Data Structures, Sorting, Searching (3rd Edition) (Pts. 1-4)

      • 作者: (美)Robert Sedgewick

      • 译者: 霍红卫

    • 《算法导论》

      • 原书名:Introduction to Algorithms, Second Edition

      • 作者: (美)Thomas H.Cormen, Charles E.Leiserson 等

      • 译者: 潘金贵 顾铁成 李成法 叶懋

  • 系统编程。

    • Windows下推荐两本书——《Windows 程序设计 》和《Windows核心编程》,

    • Unix/Linux下推荐两本书——《Unix高级环境编程》和《Unix网络编程卷1,套接字》《Unix网络编程卷2,进程间通信》。

  • 系统设计。

    • 关于设计方面,推荐《Unix编程艺术》。

如果你能在2-3年内精读完这些书,并全部融会贯通 ! _ !

3 - 系统的基础知识,表面的东西永远是肤浅的

  • 编程编到一定时候,就需要了解底层系统的机制,否则,知其然不知所以然。

  • 如果你想要了解底层机制,请学习C语言和操作系统。

  • 40多年的Unix/C影响深远。包括影响了Windows。如果你想一通百通,一定要了解Unix。那是计算机文化真正的根。

  • 不要以为一个DBA就不会考虑数据库引擎的内存页面的问题。

  • 也不要以为Web程序员就不需要了解后台的服务器和脚本的运行性能以及TCP/IP的问题。

4 - Reference

相关文章

网友评论

    本文标题:如何学好C语言

    本文链接:https://www.haomeiwen.com/subject/dqkznftx.html