汉扬编程 C语言入门 再过4年C语言就50岁了,这么老的编程语言怎么还没有过时?

再过4年C语言就50岁了,这么老的编程语言怎么还没有过时?

再过四年,C语言将迎来它的 50 岁生日,同样进行周年庆的还有 PL/M和Prolog。不过,C语言至今仍然非常受欢迎,它在几乎所有编程语言中的受欢迎程度,始终排在前十名。

再过4年C语言就50岁了,这么老的编程语言怎么还没有过时?

C语言将迎来它的 50 岁生日

再过4年C语言就50岁了,这么老的编程语言怎么还没有过时?

大多数操作系统的内核(包括 Windows,MAC,Linux,IOS 和 Android 等)都主要由使用C语言实现。此外,python 的 CPython 解释器,perl,ruby,差不多一半的 R 语言,以及 mysql 的 MysAm 代码,甚至 java 的第一个编译器都是使用C语言编写的。

再过4年C语言就50岁了,这么老的编程语言怎么还没有过时?

几个月前,新的 C语言标准——C18 获得批准,只要 198 法郎(瑞士货币单位)就可以购买 ISO/IEC 9899:2018标准,共520页。当然,也可以在 openstd 上免费查看该标准的最终草案。

再过4年C语言就50岁了,这么老的编程语言怎么还没有过时?

不过,可能只有开发C语言编译器的人,或者对编译器非常感兴趣的人才会去了解吧,哈哈。C18 获得批准

再过4年C语言就50岁了,这么老的编程语言怎么还没有过时?

新的C语言标准 C18 并没有添加什么新功能,更多的只是修复,所以它在很大程度上可以说是 C17 的延续。对C语言最后一个主要更改是在 C11 中,包括新增对变长数组、多线程、更好的 Unicode、匿名结构体和联合体等的支持。

再过4年C语言就50岁了,这么老的编程语言怎么还没有过时?

C语言和C++打了个平手 C++ 在 C语言的领域中取得一些进展,特别是自从 C++11 中增加了移动语义,如果能够正确使用该语法,在处理指向大对象的指针时,C++能以更小的开销,带来更好的性能,并且C++也能够在传统的嵌入式C语言领域使用。

再过4年C语言就50岁了,这么老的编程语言怎么还没有过时?

C语言和C++打了个平手

但是,C++程序代码编译后通常还是会比C语言的大一点,因为C++增加了异常处理,以及内联模板等C语言没有的机制。例如在 Visual C++ 2017 的 release 模式编译下面这段C++代码:

#include <iostream> int main(){ std::cout << \”Hello world\” << std::endl; return 0;} 最终得到的 exe 可执行文件的大小达到 10752 字节。再来编译相同功能的 C语言代码:

#include <stdio.h>int main(){ printf(\”hello world\\n\”); return 0;} 得到的 exe 可执行文件大小为 9216 字节,只有 C++ 程序的 85%。这里的差别还不是特别大,但是可以肯定的是,使用C++编程时,一旦加入了其他类,它与C语言程序大小的差异会越来越大。

物联网(IOT)设备的数量越来越多

代码大小非常重要,因为物联网(IOT)设备的数量越来越多,微控制器的使用也越来越多,要知道这些微控制器的 RAM 和 ROM 通常都是千字节级别的。所以在嵌入式领域,C语言在2005年至2018年期间获得的市场份额实际上是有所提升的。

C语言是编程界的通用语言 就像现实生活中,英语是世界是的通用语言一样,C语言是编程语言界的通用语言。许多其他编程语言编译器输出的其实是 C 语言代码,由C语言编译器进一步生成可执行程序。这不难理解,因为C语言是最低级别的可移植语言。(唯一更低级别的汇编语言与 CPU 紧密相关,不方便移植。)

Github 项目页面上列出了大约 60 个开源编译器,一小部分是 C++ 的,但是C语言占绝对的主导地位。C语言是编程界的通用语言

使用C语言提升效率 python 是如今最流行的编程语言之一,但是因为它是解释型编程语言,同时也受它的动态变量的影响,所以 python 程序的运行效率一直是一个痛点。使用过 python 进行大数据处理的朋友应该知道 numpy、scipy 等库可以提升效率,而 numpy 库就是由 C语言实现的。python 的标准实现是 CPython,它的主要库也是由 C语言(少许C++)实现的。

C语言是“九阳神功” C语言可能不是每个编程初学者想学的第一编程语言,但是作为第二、第三编程语言,C语言一直很流行。我把它看做编程界的“九阳神功”,学会C语言后,再学其他编程语言都如有神助。

C语言是“九阳神功”

小结 至少在底层硬件设备驱动层,C语言还未逢对手。另外在操作系统内核开发中,C语言也几乎是唯一选择,特别是在 Linux 上,C语言还将存在很长一段时间。

如今,尽管 Go 语言和 Rust 的呼声很高,但是当超过一半活跃的 Web、 服务器运行的是 Apache 和 nginx,它们都是C语言编写的,如今已经存在近 50 年了。

点个赞再走吧

欢迎在评论区一起讨论,质疑。文章都是手打原创,每天最浅显的介绍C语言、linux等嵌入式开发,喜欢我的文章就关注一波吧,可以看到最新更新和之前的文章哦。

本文来自网络,不代表汉扬编程立场,转载请注明出处:http://www.hyzlch.com/cjia/5913.html

分段函数求导怎么求 帮我举个例子解释一下?

媳妇多就用分支修剪,解决婆娘纷争,C语言经典算法之八皇后问题

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

返回顶部