【问题标题】:Why we have boolean type? [closed]为什么我们有布尔类型? [关闭]
【发布时间】:2016-03-31 02:14:52
【问题描述】:

我了解到 C 没有布尔类型。当我阅读《Ocaml from very beginning》时,在page12遇到了一个问题:

为什么我们不能像 C 语言那样只使用 0 和 1 来表示骆驼中的布尔类型?

【问题讨论】:

  • 为什么 BASIC 使用行号而 C 不使用?为什么pascal使用begin/end而不是{/}?这就是它们的设计/指定方式......
  • 你能帮我回答我书中的问题吗:为什么 ocaml 需要布尔类型?
  • 对不起@overloading,但这是一个荒谬的问题。也许你想知道为什么我们需要类型,因为一切都归结为位模式。我们这样做的原因应该很明显。
  • 是什么让你认为 C 没有布尔类型? It indeed has。当然,它与例如不在同一水平上。 intchar,但确实有。
  • @overloading:C99 现在 >16 岁。而C11 5年。是时候学习新东西了。还有很多其他有趣的功能!请注意,如果没有特定标签,我们必须假设标准 C,即 C11。没有其他有效的 C 标准。

标签: c boolean boolean-logic boolean-operations


【解决方案1】:

为什么有些语言有布尔类型而有些没有?

因为某些语言的type system 比其他语言更好。在我看来,对于许多(但不是全部)任务,Ocaml 的类型系统比 C 更好。

(但您的问题过于宽泛且见仁见智)

C 类型系统的灵感来自硬件 (PDP-11) 和当时(1970 年代初期)可用的instruction set C。

【讨论】:

  • C - 提供汇编程序的所有功能,以及汇编程序的所有易读性。
猜你喜欢
  • 2010-09-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多