c语言怎么使显示更多字节,是什么能够使C语言这么强大|字节|程序员|编程语言|指针|编程...

其实编程语言就像个动物世界,弱肉强食。而C语言存在了这么久,还一直在发展,总归有它的原因,那是什么使它能够这样呢?

简短答案:它是由专业人士创建和开发的,旨在解决他们在1960年代末/ 1970年代初遇到的一个问题,事实证明,很多人都遇到了同样的问题。他们将所需的内容放入其中,而忽略了不需要的内容。但是40多年后C的长期保持能力,对原始概念的几乎没有任何变化,这表明设计师们做对了。

8317f537c2229ea54cb853c09cc6b8ff.png

更长的答案:现代C语言的力量来自于许多不同的技术功能,而这些页面中没有探讨其他功能。但是,您的问题背后的真实真相来自其历史。

也许C语言(以及C ++,C#,D 等)并不是很好的教学语言。但是,正如那样,当您学习驾驶飞机时,飞行学校并不会帮助您开始。他们将您带到Piper Cub或小型单引擎塞斯纳(Cessna)中,一旦您理解了这些概念,便可以尝试喷射。

也就是说,在设计和最初实现C时,Ken和Dennis已经是我们现在所说的“忍者程序员”。因此,他们希望/需要专业的工具来帮助他们完成工作,而不是减慢工作速度或试图使他们避免犯很多简单的错误。

d4a2af104310b0bde7c160542b97f394.png

当肯·汤普森(Ken Thompson)为面向单词的PDP-7创建B编程语言时,他正在(自己)构建一个工具来帮助他编写操作系统(Unix)。他需要“比汇编程序更好”的东西,但并没有尝试创建世界上最伟大的编程语言。几年后,丹尼斯(Dennis)将语言迁移到面向字节的PDP-11时,需要对B进行重新考虑,然后他创建了newB(NB),在看起来有些不同之后,它最终被重命名为C。事实是,丹尼斯(Dennis)在1974年的一篇论文中描述的语言与我们今天使用的思想相同!

3a48250ce0c164725bea2e387be2d608.png

正如其他人所说,语言本身很简单。原始语言支持四种基本数据类型:面向字节的字符,面向字的整数,浮点数和指向所有先前相同字符的地址指针。这些是硬件支持的相同基本数据类型,因此它们直接映射到汇编器/机器语言。是的,我们会及时添加更多类型的语言,但不会真正改变自然顺序-它们映射到程序员所需硬件中的数据类型。

0c919a07aa9f76ddcf9cebc683f061ea.png

该语言支持全局和范围内变量的命名,以及它们在结构上的分组。它支持if / then / else的传统Algol样式控制结构以及循环的计算结构(

也称为

switch / case语句)。运算符是传统的运算符,但是还包括汇编/系统人员喜欢了解的一些内容-内置函数,如

sizeof

()和自动指针算法。加号C包含早期退出循环(继续,下一个循环)之类的想法,是的,甚至包含goto。这些都是Ken和Dennis这样的“系统程序员”在日常编程中使用的所有东西。

c7f093edbf5c8ca9cfb1afd55fc83ee6.png

当然其实还有很多原因,就比如:预处理器的想法以及对单独编译的全面支持。尽管它不是该语言的最早版本,但前者帮助使程序开始“可移植”并被编写为某种程度的本地化,无论是系统偏好设置还是目标系统都可以轻松容纳。只是大概和您从历史原因大概去说下。

454f29a865fb6e38520eae34d7fed245.png

然后因为周末了,祝大家周末快乐!小编也许很多写的不好的地方,还希望多多体谅。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值