【问题标题】:Concept of true,false logically and numerically?逻辑和数字上真假的概念?
【发布时间】:2011-01-16 22:08:17
【问题描述】:

我在一次采访中被问到这个问题!我只是想知道这个问题的正确答案是什么。我说过逻辑上这个概念是用bool数据类型(C#)来表示的。bool数据类型的变量可以有真或假值,可以用作条件检查条件。在大多数编程中,1代表真,0代表假语言。我不知道还要添加什么或两者之间有什么区别。任何 cmets 将不胜感激。

【问题讨论】:

  • 大多数语言对true的定义不是“除了0之外的任何东西”吗?
  • 我可以想象“在大多数编程语言中,1 代表真,0 代表假”。不是面试官想要的答案。
  • 查看您的问题历史记录,您收到的回复似乎已经回答了您的问题。也许您应该去将它们标记为“已接受”?
  • 感谢 cmets。不过我还是不明白!

标签: logic boolean


【解决方案1】:

在 C# 中(与其他一些语言不同)布尔值不是整数,也不能转换为整数:

int x = true; // Error - Cannot implicitly convert type 'bool' to 'int'

因此,在 C# 中说 true 等于 1 是没有意义的。在实现级别,值 true 可能在内部存储为值 1,但这是特定于该实现的细节,而不是 C# 本身的特性。

如果您想将布尔值转换为值 0 或 1,您可以这样做:

int x = isFoo ? 1 : 0;

【讨论】:

  • 谢谢回复。是不是说C#中没有数字真假的概念?
  • 是的,基本上可以公平地说,在 C# 中没有 true 和 false 的数值。
猜你喜欢
  • 1970-01-01
  • 2011-07-03
  • 2017-10-20
  • 1970-01-01
  • 2011-02-10
  • 2010-09-18
  • 1970-01-01
  • 2023-02-10
  • 1970-01-01
相关资源
最近更新 更多