什么是C语言?

什么是C语言?,第1张

什么是C语言

目录

C语言官方定义及理解

C语言是一门计算机语言

计算机语言的发展三个阶段

C语言广泛应用于底层开发

什么是底层开发?

C语言可以上层开发吗?

C语言的发展史

C语言的编译器

编译器作用

主流编译器


C语言官方定义及理解

官方的定义是说,C语言是一门通用计算机编程语言,广泛应用于底层开发。下面我将阐述我对这句话的理解。

C语言是一门计算机语言

都说C语言是一门计算机语言,那么什么是计算机语言呢?在我们日常生活中,汉语英语德语等等都是人与人之间的交流常用的语言,那么,人与计算机交流的语言是什么呢?没错,就是计算机语言。我们通过计算机语言,可以与计算机进行交流,向计算机传达指令,以实现我们所希望计算机完成的任务。像C、C++、JAVA、Python,都属于计算机语言的范畴。

计算机语言的发展三个阶段

每一个事物都有自己的发展史,不可能一出世便非常适合人们的日常使用,同理,计算机语言也是如此。在此,我将计算机语言的发展分成三个阶段:

第一阶段:机器语言,也就是二进制语言。计算机是一个硬件,需要通过电信号来传达信息。而电又有正电负电之分,刚好对应了计算机的1和0。因此早期,我们经常写0101101这样类似的二进制来向计算机传达我们的信息。但很显然,常人很难编写二进制,上手麻烦,故早期的编程需要查手册,又一些科学家来实现对计算机的交流。

第二阶段:随着语言的发展,我们又产生了汇编语言。在第一阶段的过程中,我们常发现有一些二进制指令会是我们经常用到的,具有特殊的意义。比如说010010代表着加法,我们就用ADD来表示,在比如说01001011代表着删除,我们就可以用DEL来代替这段二进制指令。这些代替一长串二进制指令的特殊单词,我们将它们称为助记符。由这些助记符组成的语言,就是汇编语言。很显然,汇编语言的使用比二进制语言方便了很多,所以第二阶段有少数人可以写代码了。

第三阶段:这一阶段的语言,我们称之为高级语言。起初的B语言,再到C语言,C++,JAVA等等,我们发现,计算机对我们写代码的门槛越来越低,从早期的二进制到现如今的高级语言,我们发现其功能也越来越多,使用的人也越来越多,所以我们经常提倡人人都可以掌握一些编程。

C语言广泛应用于底层开发 什么是底层开发?

我们将我们使用的计算机分成几个层次,最底层就是我们的计算机硬件(CPU,存储器等),再往上一层就是驱动层,再往上一层就是我们对计算机安装的第一个系统软件—— *** 作系统(Windows,Linux,DOS等),最上一层就是我们在 *** 作系统的基础上安装各式各样的应用软件。底层开发就是说,最上一层(应用软件的开发)之下所有的开发,都属于底层开发,比如说 *** 作系统开发、驱动开发、硬件开发等等。

C语言可以上层开发吗?

这当然是可以的,官方定义这句话并不是说C语言不能做上层开发,而是说C语言更适合于底层开发。比如说,早期的WPS就采用了C语言来实现的。

C语言的发展史

如同计算机语言一样,C语言的刚出世也不是说尽善尽美,像如今完善一样。每个语言都有自己的发展史,早期的C语言并不是很成熟,到后来的成熟,乃至今天的流行。

C语言刚出世时,很多厂家程序员都发现C语言比二进制语言、汇编语言好用,故纷纷采用C语言。但是此刻C语言还刚面世,功能并不是很成熟。于是各大公司各自完善C语言功能,分别对C语言做了定制型开发,以满足对本公司的需要。从而C语言出现了各个版本,鱼龙混杂,导致了C语言的不统一,最大的麻烦就是我们家的编译器跑不了你家公司所写的C语言,你家的编译器也跑不了我家公司所写的C语言。

于是,在1989年,美国国家标准局发布了C语言的标准,我们常称之为ANSI C,或者是C89。第二年,ISO也制定了标准,我们将它称之为C90。C89和C90是我们现如今所普遍采纳的语法,至于C99和C11,他们并不流行,很多编译器都跑不过去,好像C11还能用汉语写,不知真的假的,反正挺离谱的。标准制定之后,各大厂家的代码就可以相互之间互相运行了,这也是导致现如今C语言流行的重要原因。

C语言的编译器 编译器作用

我们已经知道,C语言就是C代码,电脑是不会读懂的,电脑只能读懂的是0/1二进制码,那么我们怎么样才能让电脑看懂我们写的C代码呢?这里就能体现出编译器的作用了,编译器就好比说是我们生活中的翻译,它将我们写的C代码转变为二进制,从而让计算机读懂。

主流编译器

常见的C编译器有很多,主要有Clang、GCC、WIn-TC、SUBLIME、MSVC、Turbo C等。笔者最习惯用的是Visual Studio 2019,也推荐大家使用但准确来说,VS不应该属于编译器,而是IDE(集成开发环境)。VS所采用的编译器是MSVC,DEV C++用的是GCC,不过不知道这些对写代码也无关紧要,只要能编译运行即可。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4751634.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-08
下一篇 2022-11-08

发表评论

登录后才能评论

评论列表(0条)

保存