【发布时间】:2017-12-04 10:26:25
【问题描述】:
在 C 中从 int 到 float 的转换是否总是可能的,而 float 不会成为 +Inf 或 -Inf 等特殊值之一?
AFAIK int 的范围没有上限。
我认为 128 位 int 会导致具有 IEEE754 float 的平台出现问题,因为它的上限值约为 2 的 127 次方。
【问题讨论】:
-
int 确实有一个最大值:stackoverflow.com/questions/94591/…
-
@chris int 不保证是 32 位,正好等于或大于 16 位。
-
@WillyWonka 无论您处理何种数据类型,都会有限制(因为这是真实世界,而不是无限的图灵机)。
-
对不起,我太高了。我认为 128 位
int就足够了。已编辑问题。我是新来的,有什么办法可以阻止投票吗? -
@Chris 当然 int 会有一些上限。但是 OP 询问 int 的限制何时高于 float 的限制,例如具有 128 位 int 和 IEEE-754 单精度浮点数的平台
标签: c floating-point