【发布时间】:2020-08-04 09:52:50
【问题描述】:
如果int32_t 总是无损地转换为double,我特别感兴趣。
以下代码是否总是返回true?
int is_lossless(int32_t i)
{
double d = i;
int32_t i2 = d;
return (i2 == i);
}
int64_t 是什么?
【问题讨论】:
-
int64_t显然不是这样,因为尾数只有 52 位大小。但是对于int32_t,这应该是无条件的。
标签: c++ c floating-point