如果我有一个 C# float
,我可以将它转换为 double
而不会丢失任何精度吗?
如果将 double
转换回 float
,它的值是否完全相同?
最佳答案
是的。 IEEE754 浮点(这是 C# 必须使用的)保证了这一点:
将
float
转换为double
保留完全相同的值将
double
转换回float
可以完全恢复原始float
。
double
的集合是float
的超集。
请注意,这也适用于NaN
、+Infinity
和-Infinity
。零的符号也被保留。
关于c# - float 是否可以通过 double 往返而不损失精度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40550861/