gpt4 book ai didi

c - C 有 32 个或 44 个关键字吗?

转载 作者:行者123 更新时间:2023-12-05 01:05:42 24 4
gpt4 key购买 nike

ISO/IEC 9899:2017 C N2176 文档链接:https://files.lhmouse.com/standards/ISO%20C%20N2176.pdf

万维网上有很多资料,说C语言有32个关键字,但是这个文档(我认为是草稿版本,但与之前的版本相比没有太大变化,对吧?)有 44 个单词,它们被定义为 C 语言的关键字

请解释一下。

================================================ ==============

链接到说C语言中有32个关键字的来源:

  1. https://www.programiz.com/c-programming/list-all-keywords-c-language
  2. https://tutorials.webencyclop.com/c-language/c-keyword/
  3. https://www.educba.com/c-keywords/
  4. https://www.javatpoint.com/keywords-in-c
  5. https://beginnersbook.com/2014/01/c-keywords-reserved-words/
  6. https://www.phptpoint.com/c-keywords/
  7. https://www.guru99.com/c-tokens-keywords-identifier.html
  8. https://fresh2refresh.com/c-programming/c-tokens-identifiers-keywords/
  9. https://www.w3schools.in/c-tutorial/keywords/

注意:其中一些网站对初学者学习 C 的基本概念和术语很有用。

最佳答案

  • C 中有“32”个关键字的说法是指 1989 年 ANSI 指定的 C 原始版本,即 C89。
    • 因为这是互联网,而且因为真正的 C 规范落后于ISO's ridiculous paywall大多数如此倾向的人可能无法对这一说法进行事实核查。
    • 这不是声称​​值得事实检查:一种语言中的关键字数量完全是琐事无关紧要。
  • 您链接到的 ISO/IEC 9899 规范指的是 C17(2017 年提议的更新 C 规范),该规范比 C89 晚了 28 年。
  • 编程语言的 future 更新版本引入了新关键字也就不足为奇了。

从历史上看,当 C 被引入时,人们对其极简的语法以及该语言的设计如何通过将功能实现为库特性有效地具体化一切印象深刻 em> 而不是 语言特性,这使 C 语言保持简单,并有助于减轻每种语言的设计者对 特性蔓延 的恐惧。

相比之下,C 的早期同时代人(如 COBOL)选择在自己的语言中实现功能作为一流的特性,这就是为什么 COBOL has over 300 keywords ;所以我承认,使用关键字计数的明显差异确实可以作为语言复杂性和扩展的代理:一种几乎量化好的设计的方法。但在 2021 年将其用作比较当今语言的基础,作为当今最相关的编程语言,其效用有限 1 已经受到 C 的启发或以某种方式从 C 派生而来,并且他们都同意 C 在库中而不是语言中做事的决定,因此 所有 这些语言的关键字数量同样很少与 COBOL、SQL 等相比,这就是 C 的关键字计数不再有趣的原因。


1:受 C 启发或 C 派生的语言 in use today :C++、Objective-C、Java、Groovy、Swift、C#、JavaScript、TypeScript、Go、PHP、Perl。其他不是以 C 为模型的流行语言(如 Haskell、OCaml 等)确实共享 C 的 library-first 哲学,但我不能说 C 是否起源于它与否 - 但我觉得选择库优先设计的语言是不可避免的:实现语言功能的成本很容易是实现库功能的十倍。

关于c - C 有 32 个或 44 个关键字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70452853/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com