<分区>
C语言的主要缺陷是什么?在面试中应该如何回答这个问题?我的意思是,与较新的语言相比,C 现在缺少什么?
标签 c language-design
<分区>
C语言的主要缺陷是什么?在面试中应该如何回答这个问题?我的意思是,与较新的语言相比,C 现在缺少什么?
最佳答案
C 可能是有史以来最重要的单一语言。
C 确实实现了它所有的近期目标,而且远不止于此。它确实没有“缺陷”,本身,而是选择,这将它定义为理想的系统实现语言和可接受但不完美的应用程序语言。
当 C 在 70 年代初期突然出现时,它正在与 Fortran、Basic、Cobol,尤其是汇编竞争。正如他们所说,它吃了他们各自的午餐,并将它们作为实现语言埋葬了。只有 Fortran 幸存下来,虽然很少有程序可以用 Fortran 表达,但不能用 C 表达。
直到今天,C 偶尔也会在 the Tiobe index 上排名第一,仅次于更专业且非常流行的 Java。
当然,对于动态和符号应用程序,C 可能无法与 Ruby、Lisp 或 Python 相提并论,但它们当时不存在,对实现没有用处。这三者通常都是用 C 语言实现的,有点“笑到最后”。 Ruby 在内部是 200,000 行 C。
所以是的,它没有实现所有可能的编程范例。并回答您的具体问题:
总的来说,C 是一种结构化的高级语言,可以在其中构建任何东西,但它不具有允许更大、更复杂的反射和面向对象的属性程序和抽象。编写 C 语言的天才可以做任何事情,但我们大多数人应该在我们的问题领域允许时使用更高级的语言。
关于c - C的主要缺陷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5509029/