首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

致敬“前浪”,C语言重回榜首

我们总说,长江后浪推前浪,但在编程界,似乎更流行“姜还是老的辣”。与近年来陆续涌现的新兴编程语言相比,那些出道即巅峰、巅峰几十年的“前浪”们,似乎没有退位让贤的意思。

近日,TIOBE 公布了 2020 年 5 月的编程语言排行榜,C 语言时隔 5 年重返榜首,Java 和 Python 分列二、三位。而排名前十的语言中就有 8 个诞生于上个世纪 90 年代,最“年轻”的是诞生于 2001 年的 C#,而位于榜首的C语言距今已有 48 年的历史。如果我们再来纵观自 2002 年以来的编程语言排行榜,基本上也还是这些老牌编程语言的身影,尤其是C语言与 Java 这两位“前浪”老大哥的江湖地位一直难以撼动。

TIOBE 2020 年5月编程语言排行榜

一、C语言为什么能重回榜首?

我认为原因有以下几点原因:

1. C语言一直排名很靠前,长时间占据榜首

就拿近几年来说,C语言荣获2019年度编程语言奖;2020年4月,C语言以0.01%的差距仅次于Java,但2.64%的增长率最高。

TIOBE2020年4月编程语言排行榜

2.物联网和当今发布的大量小型智能设备的驱动

C语言在性能关键型小型设备的使用上非常出色,而且它易于学习,更为关键的是每个处理器都有可用的C语言编译器

C语言程序设计

3.历史遗留问题

即使有更好的语言,但目前几乎所有操作系统都是C语言写的,就这一点就注定C语言不会淘汰,目前5G兴起,嵌入式物联网掀起波澜,都是C语言的传统技能,通信更不用说一直都是C语言的天下。

C语言操作系统

4.疫情的影响

Paul Jansen TIOBE Software首席执行官表示:原因之一可能是冠状病毒。 虽然这听起来感觉有点匡谬,不过某些编程语言确实可以从这种情况中受益。

二、C语言的优点

1.面向过程的语言

C语言是面向过程的语言,在这里用户创建过程或函数来执行他们的任务。面向过程的语言是很容易学,它使用关键字就像if, else, switch, main等。这类关键词,我们都在我们的日常生活使用的是传达意义或得到一些决定。

2.数据结构丰富

C语言的数据类型有:基本类型(整型、字符型、实型、枚举型)、构造类型(数组、结构体、共用体)、指针类型、空类型。这些数据能用来实现各种复杂的数据结构的运算并引入了指针概念,使程序效率更高。另外C语言具有强大的图形功能,支持多种显示器和驱动器,且计算功能、逻辑判断功能强大。

数据类型

3. C语言拥有许多库

C语言中提供了大量的函数其中包括系统生成的函数和用户定义的函数。C语言编译器自带的头文件,其中包括可用于开发程序的许多基本功能列表。同时,程序员还可以创建功能,按他们的要求被称为用户生成/定义的函数。

4. C语言编译速度快

C语言编译器产生的机器代码相比其他语言的编译器可以说是非常快。C语言编译器可以在两秒编译约1000行代码。C语言编译器的另一个好处是,它还优化了代码更快的执行速度

5. C语言是结构式语言

结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。

6.可移植

C语言是高度可移植的语言。这意味着,对于一台计算机编写的C语言程序可以在另一台计算机上轻松地运行而没有任何变化或做一个小的变化。

直到今天,还有人在喊C语言是过时语言。我只想说C语言从来没有过时,你大爷终究是你大爷。你怎么看待C语言重回TIOBE榜首呢?欢迎在下方留言评论~

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

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券