C语言还值得学习吗?

在我们正式学习编程之前,有一个问题不吐不快,那就是“C语言还值得学习吗?”

现在编程语言更新很快,很多语言崭露头角,Java、Python、JavaScript、C#、GO、R等等,这些语言在市场的份额相当之高。再加上学习C语言很多人仅仅是为了打个基础,根本不看重C语言本身的强大之处,学完C语言转向其他语言的大有人在,甚至有的学生直接跳过C语言学习Java、Python!这是不是能够说明C语言已死?

其实说起来为什么这么多人放弃C语言呢?这与其他编程语言的便捷性不无关系,关于C语言的“缺点”我总结了三点:

1、代码底层,缺乏共享。

与Java多如牛毛的库函数、三方控件和框架相比,C语言的库函数简直就是少的可怜。如果说Java是个富得流油的大财主,那么C语言只是一个家徒四壁的小佃户。选择C语言,开发者必须独立设计所有的细节,小到栈与队列,大到串口与通信,必须从底层开始设计全部的代码。

比如字符串分解,在Java中仅仅调用类的一个方法就可以完成,但在C语言中却无从调用。又比如说数据结构,Java中所有基本数据结构都提供了现成的类,但在C语言中,开发者必须自己设计诸如队列与树之类的内容。再比如说网络通信,Java中重载一个类既可以获取用户在网页中提交的内容,但在C语言中,这简直就是不可以想象的事情。

有人说,Java只需2万行完成的代码,在C语言中需要7万行,这无不道理。

2、指针犀利,访问灵活。

C语言特别灵活,可以访问绝大多数的系统资源,尤其是C语言的指针,简直就是一把锋利的倚天宝剑。当程序正确时,C语言能够加速运行,减少代码。但是,谁能保证程序没有bug呢?倘若代码中出现了错误,哪怕是一丁丁的错误,也能如蝴蝶效应般产生不可估量的后果,所谓“一个语句可以造成程序全面崩溃”就是这个道理。

3、应用狭窄,界面简陋。

几个IT人讨论技术,十有八九发现他们使用的都是Java。几个学生展示课程设计,Java同学总是展示某某管理系统,引起同学们的阵阵惊呼;而C语言同学总是展示一个黑洞洞的窗口,只带来一些友情似的稀稀落落的掌声。仿佛C语言在编程队列中被边缘化,似乎C语言项目正在一步一步的走向末路,好像C语言程序员正逐渐消失。

如此看来:C语言属于英雄,他注定是英雄的长剑而不是平民的武器,所以,一般的大学生其实无须选择和学习C语言。然而事实真的是这样吗?

其实并非如此,正如流言在真相面前不攻自破一般,打消大家怀疑C语言的念头,其实很简单,两个数据就可以使这种怀疑消失的无影无踪:

其一、《编程语言排行榜》

翻开排行版,无论哪个月份,前三强必定是Java、C和C++/Python,C语言的比重绝对超过15%,Java也只是在20%左右,所以学习C语言,绝非无用武之地。

其二、招聘网站

进来各大招聘网站,搜索C语言及其相关岗位,绝对可以得到大量的信息,这也从正面证实了学习C语言,前途是光明的。另外,你如果感觉自学C/C++语言有困难的话,我本身是一个C/C++出身的程序员,整理了一些学习C语言的资料,大家有兴趣可以来,C/C++编程学习,784143133。

由此看来,C语言不但未死,相反还活的有滋有味。既然学习C语言前景广阔,那么为什么很多学生迷茫,很多学生谈C色变呢?这是因为,学习C语言,前途是光明的,道路——其实并不曲折,但却是掩盖的,明明路就在前面,但是同学们就是发现不了,只好在黑夜中挣扎,把大部分学习的精力浪费在无休止的挣扎之中,久而久之,增加了C语言的恐怖气氛,自然而然地缺乏了学习C语言的兴趣。

C语言还值得学习吗?相信各位心中已经有自己的答案!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190813A0SL4B00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券