c语言|是什么能够使C语言这么强大


c语言|是什么能够使C语言这么强大
文章图片
c语言|是什么能够使C语言这么强大
文章图片
c语言|是什么能够使C语言这么强大
文章图片
【c语言|是什么能够使C语言这么强大】其实编程语言就像个动物世界 , 弱肉强食 。 而C语言存在了这么久 , 还一直在发展 , 总归有它的原因 , 那是什么使它能够这样呢?
简短答案:它是由专业人士创建和开发的 , 旨在解决他们在1960年代末/ 1970年代初遇到的一个问题 , 事实证明 , 很多人都遇到了同样的问题 。 他们将所需的内容放入其中 , 而忽略了不需要的内容 。 但是40多年后C的长期保持能力 , 对原始概念的几乎没有任何变化 , 这表明设计师们做对了 。
更长的答案:现代C语言的力量来自于许多不同的技术功能 , 而这些页面中没有探讨其他功能 。 但是 , 您的问题背后的真实真相来自其历史 。
也许C语言(以及C ++ , C# , D 等)并不是很好的教学语言 。 但是 , 正如那样 , 当您学习驾驶飞机时 , 飞行学校并不会帮助您开始 。 他们将您带到Piper Cub或小型单引擎塞斯纳(Cessna)中 , 一旦您理解了这些概念 , 便可以尝试喷射 。
也就是说 , 在设计和最初实现C时 , Ken和Dennis已经是我们现在所说的“忍者程序员” 。 因此 , 他们希望/需要专业的工具来帮助他们完成工作 , 而不是减慢工作速度或试图使他们避免犯很多简单的错误 。
当肯·汤普森(Ken Thompson)为面向单词的PDP-7创建B编程语言时 , 他正在(自己)构建一个工具来帮助他编写操作系统(Unix) 。 他需要“比汇编程序更好”的东西 , 但并没有尝试创建世界上最伟大的编程语言 。 几年后 , 丹尼斯(Dennis)将语言迁移到面向字节的PDP-11时 , 需要对B进行重新考虑 , 然后他创建了newB(NB) , 在看起来有些不同之后 , 它最终被重命名为C 。 事实是 , 丹尼斯(Dennis)在1974年的一篇论文中描述的语言与我们今天使用的思想相同!
正如其他人所说 , 语言本身很简单 。 原始语言支持四种基本数据类型:面向字节的字符 , 面向字的整数 , 浮点数和指向所有先前相同字符的地址指针 。 这些是硬件支持的相同基本数据类型 , 因此它们直接映射到汇编器/机器语言 。 是的 , 我们会及时添加更多类型的语言 , 但不会真正改变自然顺序-它们映射到程序员所需硬件中的数据类型 。
该语言支持全局和范围内变量的命名 , 以及它们在结构上的分组 。 它支持if / then / else的传统Algol样式控制结构以及循环的计算结构(也称为switch / case语句) 。 运算符是传统的运算符 , 但是还包括汇编/系统人员喜欢了解的一些内容-内置函数 , 如sizeof()和自动指针算法 。 加号C包含早期退出循环(继续 , 下一个循环)之类的想法 , 是的 , 甚至包含goto 。 这些都是Ken和Dennis这样的“系统程序员”在日常编程中使用的所有东西 。
当然其实还有很多原因 , 就比如:预处理器的想法以及对单独编译的全面支持 。 尽管它不是该语言的最早版本 , 但前者帮助使程序开始“可移植”并被编写为某种程度的本地化 , 无论是系统偏好设置还是目标系统都可以轻松容纳 。 只是大概和您从历史原因大概去说下 。
然后因为周末了 , 祝大家周末快乐!小编也许很多写的不好的地方 , 还希望多多体谅 。