【问题标题】:range of primitive datatypes in C? [closed]C中的原始数据类型的范围? [关闭]
【发布时间】:2012-03-03 14:01:29
【问题描述】:

我正在学习 C 语言,并获得了以下原始数据类型:

我不知道Range列的值是从哪里来的。

【问题讨论】:

标签: c primitive-types


【解决方案1】:

如果 int 是 16 位的,则表示有 2^16 不同的值。其中,2^15 (= 32,768)(一半)是负数,2^15 - 1 (= 32,767) 是正数,最后一个是0

同样的推理可用于 8 位、32 位或任何其他大小的整数。

对于浮点数(float 和 double),范围是 explained on Wikipedia 或 Steve Hollasch 的页面 IEEE Standard 754 Floating Point Numbers

【讨论】:

  • 为什么要 -1 表示正数? (2^15 - 1)
  • 0 占一个位置,所以两个都不能是2^15。您可以将其视为2^15 负整数和2^15 非负整数(即包括0),它们总共是2^16 整数。
猜你喜欢
  • 1970-01-01
  • 2010-12-16
  • 2012-10-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多