IEEE 754浮点数十六进制转十进制 c#
时间: 2023-09-10 16:14:18 浏览: 153
C语言+数字格式转换+十进制浮点数转IEEEE-754十六进制
在 C# 中,可以使用 `float.Parse()` 和 `double.Parse()` 方法将十六进制表示的 IEEE 754 浮点数转换为十进制表示。
以下是一个示例代码:
```csharp
string hexValue = "3F800000"; // 十六进制表示的 1.0
float floatValue = BitConverter.ToSingle(BitConverter.GetBytes(int.Parse(hexValue, System.Globalization.NumberStyles.HexNumber)), 0);
double doubleValue = BitConverter.ToDouble(BitConverter.GetBytes(long.Parse(hexValue, System.Globalization.NumberStyles.HexNumber)), 0);
Console.WriteLine($"Float value of {hexValue} is {floatValue}");
Console.WriteLine($"Double value of {hexValue} is {doubleValue}");
```
输出:
```
Float value of 3F800000 is 1
Double value of 3F800000 is 1
```
以上代码中,`BitConverter.GetBytes()` 方法将十六进制表示的浮点数转换为字节数组,然后通过 `float.Parse()` 和 `double.Parse()` 方法将其转换为十进制表示的浮点数。
阅读全文