C语言的前世今生

1. C语⾔是什么?

        我们都知道 ⼈和⼈ 交流使⽤的是⾃然语⾔,如:汉语、英语、⽇语等
但如果我们想给计算机下达一个指令,我们就需要和它进行交流了,那 ⼈和计算机 是怎么进行交流的呢?
当然是使⽤ 计算机语⾔ 啦,这是一种计算机能够读懂能够明白的一种语言。
⽬前,我们已知已经有上千种计算机语⾔,⼈们是通过计算机语⾔写的程序,给计算机下达指令,让计算机⼯作的。
C语⾔就是众多计算机语⾔中的⼀种了,当然C++/Java/Go/Python等都是计算机语⾔,我们现在已知的计算机语言已经有上千种了!
简单地说:C语言是一种计算机的语言,是实现任人和计算机交流的一种语言

2. C语⾔的历史和辉煌

C 语⾔最初是作为 Unix 系统的开发⼯具⽽发明的。我们可以了解到:
时间事件                                    具体内容

1969年

发明B语言1969年,贝尔实验室的肯·汤普森(Ken Thompson) 与丹尼斯·里奇(Dennis Ritchie) 一起开发了Unix 操作系统。Unix 是用汇编语言写的,为了移植到其他计算机,汤普森就在 BCPL 语言的基础上发明了B 语言。
1972年发明C语言丹尼斯·里奇和布藥恩柯林汉(Brian Kernighan) 又在B 语言的基础上重新设计了一种新语言,这种新语言取代了B 语言,所以称之为C 语言。
1973年Unix系统使用C重写整个Unix 系统都使用 C 语言重写。此后,这种语言开始快速流传,广泛用于各种操作系统和系统软件的开发。
1988年C语言标准化美国国家标准协会(ANSI) 正式将C 语吉标准化,标志着 C 语言开始稳定和规范化
至今排名一直到今天C语言还是在广泛的使用,在计算机语言的排行榜上霸占前三名
        大家有没有听过这样的一句话啊,叫作 C生万物,从这句话上我们就可以看到C语言在软件开发,技术领域里面的一个重要性。近几年,我们一直在倡导 万物互联, 要打造一个物联网的世界,这个物联网里面就会涉及到各种各样的嵌入式的设备,和我们生活中各种各样的穿戴设备和智能电器等息息相关,这些设备都要搭载一些软硬件相关的设备,这个时候是离不开C语言的。C语言非常擅长做 底层和硬件的工作,所以说: C语言非常值得大家去深入挖掘。
https://www.tiobe.com/tiobe-index/ 大家可以从这个网站去了解各种计算机语言的排名,可见C语言还是比较重要的一门计算机语言

3.关于一些编译器

3.1 编译和链接

C语⾔是⼀⻔编译型计算机语⾔,C语⾔源代码都是⽂本⽂件,⽂本⽂件本⾝⽆法执⾏,必须通过编译器 翻译 和链接器的 链接 ,⽣成 ⼆进制的可执⾏⽂件 ,可执⾏⽂件才能执⾏。
C语⾔代码是放在 .c 为后缀的⽂件中的,要得到最终运⾏的可执⾏程序,中间要经过编译和链接2个 过程。
1. 每个源⽂件(.c)单独经过编译器处理⽣成对应的⽬标⽂件(.obj为后缀的⽂件)
2. 多个⽬标⽂件和库⽂件经过链接器处理⽣成对应的可执⾏程序(.exe⽂件)
这就是,在Windows电脑上C语⾔程序⽣成的exe可执⾏⽂件

3.2 编译器的对⽐

那我们常⻅的C语⾔编译器都有哪些呢?
⽐如:msvc、clang、gcc 就是⼀些常⻅的编译器,当然也有⼀些集成开发环境 如:VS2022、
XCode、CodeBlocks、DevC++、Clion 等。
集成开发环境(IDE)⽤于提供程序开发环境的应⽤程序,⼀般包括代码编辑器、 编译器 、 调试器和图形⽤⼾界⾯ 等⼯具。 集成了代码编写功能、分析功能、编译功能、调试功能等⼀体化的开发软 件服务套。
下面是一些编译器的优缺点:
VS2022 集成了MSVC(安装报包较⼤⼀些,安装简单,⽆需多余配置,使⽤起来⾮常⽅便)
XCode 集成了clang(苹果电脑上的开发⼯具)
CodeBlocks 集成了gcc(这个⼯具⽐较⼩众,需要配置环境,不太推荐)
DevC++ 集成了gcc(⼩巧,但是⼯具过于简单,对于代码⻛格的养成不好,⼀些竞赛使⽤,有的学校会推荐使用)
Clion 是默认使⽤CMake,编译器是可以配置的(⼯具是收费,所以暂时推荐⼤家使⽤)
 
大家可以根据自己的需要来选择适合自己的编译器来创作代码,在之后的博客中,栀酝会使用VS这个编译器来向大家展示代码运行的效果哦~
大家一起加油!
  • 22
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值