一年天,总有那么几百天听到有人说“C语言过时了”“C语言要被时代淘汰了”,那么真的会被淘汰吗?
C语言发布于年,到年已经有49年的历史,C是一种广泛非常使用的语言,从操作系统内核到加密算法的编写,到处都在使用C,如:
1)操作系统内核,例如Linux等;
2)微控制器;视频编解码器;
3)底层共享库,例如OpenSSL等;
4)Unix命令行工具,例如ls、cat和git等
以上领域仍然是C语言主导,截止到目前还没有找到替代C语言的方案。
虽然C语言是最广泛的语言之一,但是按照如今的标准来看,C语言也存在许多限制和缺陷。例如C语言非常不善于处理类似于缓冲溢出的问题,例如C语言没有类型安全,喜欢动态语言的人很难接受这一点。
既然C语言这么坑,那么为什么还没有被替换掉呢?其中的原因很多。不过在某些地方,C语言已经被替换了。以前很多用C语言处理的任务如今都改用Java、C#、C++以及其他语言了。另外在LLVM的支持下,在Go的启发下,完全可以替换掉C语言。
那么,年,甚至未来C语言会被淘汰呢?
不会,起码在未来几十年会继续发光发热。
因为C语言的简洁性,如同毛细血管,平时没感觉,一旦受伤就出血,但马上又能快速愈合,你查觉不出C这块出了问题。
因为C语言直接或间接地影响了无数语言,比如C++、Java、Go、D、Rust、Perl,甚至是PHP和Python。
因为C语言非常成熟,重视对内存的管理,拥有内联汇编、少量抽象,且语言没有过度膨胀,能让程序员能够很好地控制程序。
所以,C语言成为了OS内核(Linux、WindowsNT或macOS的XNU等)以及其他语言(例如Python)的理想选择。
按照这个逻辑,就好比吃米饭有7千年的历史了,虽然老祖宗吃米饭的花样和品类没有现在多,但是现代出生的人就不吃米饭了?
关于C语言,你觉得未来会被淘汰吗?
---
了解更多IT行业的文章,可以