原标题:为什么知乎上大多数人不推荐C语言入门?

我们偷偷一起玩

1

计划中,其实今天是要发五子棋项目附带源码的推文。但是看了知乎......

知乎并非程序员社区,很多这方面话题的参与者仅仅是工作涉及编程,并没有多少是程序员。所以主流舆论对C充满了恐惧和……厌恶。对他们来说,C简直是必须立刻马上当即淘汰掉的、恐怖的老不死。以至于大言不惭的“C只能做底层”之类胡言乱语都出来了。

先来普及下C的特点:

它不作任何封装,把整个硬件、整个操作系统赤裸裸的摆在你的面前;同时它又是一种高级语言。使得它的用户不必关注太多底层细节,于是在其上无论是讨论算法、还是谈论操作系统、网络协议栈、编译原理等等,都极为简单直观。

这些特点使得C极具生命力。甚至哪怕到了现在,C仍然是最为流行的编程语言(一直和java、c++联手垄断流行编程语言排行榜前三位——而且C经常在榜首;注意C和C++是分开统计的)。

尤其是偏底层的系统级编程,更是C一家独大,除了C++别无对手。

别以为C只能做底层。真正复杂、高难度、对性能有苛刻要求的、支柱性的大项目,C仍然当仁不让、不可替代——我不知道那些说C不适合做项目的,究竟有没听说过linux,看过几个开源项目。

C实现的任何东西,无论是操作系统还是编译器,全都会以赤裸裸的算法+数据结构的面目展示在你的面前。想知道什么,只要从一个API开始跟,很容易就能搞明白——跟一跟某个硬件相关API,甚至可以帮助你准确理解硬件。

彻底学通之后,任何技术、任何架构,都能一目了然。

简洁直白、案例众多、学习资源丰富,这是C最为独特的优势。

除了C之外,你到哪里找别的、有丰富的相关开源源码及其分析资料的语言?若学到这等程度了,连计算机原理都不会,还学个什么鬼?

连个C指针都觉得难、然而却还挣扎着想入这个门的……简直不可想象。

这也就是为什么我说要先学C语言,再考虑C++或Java还是Python还是PHP的原因。

2

很多人就不明白了,既然如此,为什么知乎上大多数人不推荐C语言入门?

举个例子:

就好比学武功是先练《少林基本功》还是直接练《辟邪剑法》的问题。

这里就出现了分支,如果你只是有兴趣,想要做出一些东西来验证你的想法的话,可能《 Python 》《PHP》这样的编程语言比较适合你。

目的性不是很强的学习,很容易因为畏难,无法解决问题就选择放弃,所以建议还是选择简单一些,并且能马上看到结果的语言来学习比较好。

这类编程语言就类似于编程界的《辟邪剑法》,你可以不懂底层,没有基本功也能很快让你上手,做出你印象中程序的样子,这样可以更好地提升你的兴趣并且解决你的问题。

如果你是出于对这行的“钱景”,想要未来在这行扎根,并且有不错的发展的话,应该不至于因为难而放弃吧?所以以我觉得想学习编程的朋友先从C语言入门还是不错的。

因为我最开始也是先学的C语言再学的C++,现在在学Python。

责任编辑:

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐