📜  C#| BitConverter.Int64BitsToDouble()方法(1)

📅  最后修改于: 2023-12-03 15:00:14.382000             🧑  作者: Mango

C# | BitConverter.Int64BitsToDouble()方法

简介

BitConverter.Int64BitsToDouble()方法用于将64位有符号整数表示的浮点数(Double)转换为等效的双精度浮点数(Double)。

语法
public static double Int64BitsToDouble(long value)
参数

value:64位有符号整数,对应双精度浮点数的位表示。

返回值

一个双精度浮点数(Double)。

示例

以下示例将一个双精度浮点数转换为64位有符号整数并再次转换为双精度浮点数:

double original = 42.42;
long bits = BitConverter.DoubleToInt64Bits(original);
double restored = BitConverter.Int64BitsToDouble(bits);

Console.WriteLine(original);    // Output: 42.42
Console.WriteLine(bits);        // Output: 4616715100991977258
Console.WriteLine(restored);    // Output: 42.42

输出结果证明转换成功,生成的64位有符号整数代表了双精度浮点数的位表示,再使用Int64BitsToDouble()方法将其转换为原始值时得到的结果与原始值相同。

注意事项
  • 转换的双精度浮点数必须是普通数字,在特殊值(如NaN或Infinity)或系统文化无关的其他数字表示中的行为未定义。
  • 该方法是一个静态方法,可以通过类型名称来调用,如“BitConverter.Int64BitsToDouble()”。