信奥赛为什么要用C++

作者: 老韩 分类: 信奥赛,闲聊 发布时间: 2024-04-23 00:02

信奥赛选择了C++作为竞赛语言,为什么呢?

我们简单的了解下编程语言的历史。

大家都知道,计算机内部是0和1的世界,我们要和计算机沟通,要指挥计算机干活,那么就得用计算机能看得懂的语言。

1946年,世界上第一台可以编程计算机诞生,随着计算机的诞生,程序员这个职业就出现了。最开始的时候,和计算机沟通就得用机器语言,就是用0和1来表示数据和流程,人类用计算机的语言和计算机沟通,只要表达没问题,计算机可以最快地理解人们的意图,进而快速响应,虽然当时的计算机并不能干太多事,但是机器语言的效率是杠杠滴。机器语言老韩也没有用过,只是听说过。大家知道就行了。

但是,0.01秒和0.1秒的计算耗时并不会让人无法接受,于是,人们开始思考如何用更接近人的语言来和计算机沟通,就出现了汇编语言,汇编语言中出现了英文指令,编程不再是枯燥的0和1了,人们能更好滴阅读代码。汇编语言相对于机器语言多了个编译的动作,这个过程将汇编语言编译成了计算机认识的0和1。

汇编语言现在仍然活着,但是已经很少了。

汇编语言对于大部分人来说,仍然是晦涩难懂的(有兴趣的同学可以去搜一下),所以在1956年的时候,高级语言C诞生了(在C之前也有其他高级语言诞生,但是目前我们用的比较少了,所以这里不提)。

C语言的诞生绝对称得上编程语言的一个里程碑。即使到了今天,C语言仍然是使用很广泛的语言。TIOBE最新发布的编程语言2024年4月排行榜,C语言仍然稳占排行榜二哥的位置,地址在这儿:https://www.tiobe.com/tiobe-index/

C语言是一种面向过程的编程语言,不能满足面向对象开发软件的需要。所以,在面向对象的程序设计思想下,C++应运而生。单从名字来看,C++就是一个基于C但是又高于C的存在。在保留了C语言优势的基础上,C++引入了类的概念。

现在,大家习惯性地将C和C++放在一起来说,很多地方都可以看到C/C++这样的一个表达,因为C++集成了很多C的特性和语法。几乎C语言所有的特性C++编译器都支持。

而现在的Java和Python等语言,虽然说性能也挺好。但是和C/C++比起来还是差不少的。而且现在的高级语言对底层的封装越来越多,作为基础竞赛,C++更能代表计算机语言。

C++对于底层的控制更加透明化,更适合用来解竞赛题目。

小结:C++作为一门影响深远且用途广泛的语言,作为竞赛语言,好好学,不会亏的。毫不避讳地说,竞赛的C++能学习的不错,再回过头去学习Python、Java之类的语言,真的是能半天了解语法上手就能撸代码的,但是反之就不行。

发表回复

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

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据