之前写过一篇 我是如何学习 C 语言的, 是从方法论的角度来介绍学习 C 语言的。
后来收到许多读者的反馈,希望能有一个学习路线图,或者说是关于 C 语言的知识体系图,按此图可以一步一步的修炼自己的 C 语言编程能力。
分享之前我还是要推荐下我自己的C/C++学习交流裙:三 四 三 八 九 一 三 六 五,不管你是小白还是大牛,小编我都挺欢迎,不定期分享干货,包括我自己整理的一份2017最新的C/C++资料和零基础入门教程,送给大家,欢迎初学和进阶中的小伙伴
花了很多的功夫,这幅C 语言学习路线图终于跟大家见面了。
总的来说,C 语言的用途分为上层开发和底层开发。
1. 上层开发
其实用 C 语言做上层应用程序开发和写界面不是明智的选择,比如 Windows 上面,画个窗口,写个消息处理函数,麻烦的要死。
做上层应用程序开发,其实大家都在用:
Windows: C++ \ C#,MFC \ QTAndroid: JavaIOS: Objective-c / swiftLinux: C\C++,GTK+\ QT(Linux 图形界面应用程序,不说了,槽点无数...)
2. 底层开发
C 语言主要的用途还是底层编程,例如系统软件:编译器,JVM,驱动,操作系统内核,还有各种嵌入式软件,固件等。
3. 总结
所以说,C 语言往深了学,要学习操作系统,虽然 C 语言和操作系统之间没有必然联系,但是别忘了,连操作系统都是 C 语言写的,C 语言的主要用途也在底层开发上面。
初学者学完了基础语法,厌倦了黑乎乎的界面,想写出带界面的程序?
虽然利用 Windows api 也可以实现,但还是别折腾了,转战别的语言吧,有现成的脚手架,又何必重造脚手架。
没办法,C 语言就不是让你写 App 的。
回到上副图,想顺便说一下,用 C语言开发程序,学习数据结构和算法不是先决条件,不懂算法照样可以写出程序。但是想把程序写好,理解它的精髓,算法是不可或缺的。
还有就是,并不是先把前面的 C 语言基本语法学精通了,才可以进行下一步,才可以开发程序,你可以在写代码的过程中不断锻炼和迭代自己的编程能力和对 C 语言的理解。
搭建完开发环境之后,不管你有没有学完前面的基本语法和标准库,都可以开始练习写程序了,并且这一步可能停留的时候比较长,可以先从小的代码片段开始,这是一个C语言打基础的过程。
领取专属 10元无门槛券
私享最新 技术干货