go - 如何将十六进制 slice 转换为带二进制补码的 float

标签 go type-conversion hex

有什么解决方案可以将十六进制 slice 转换为float64值。
slice 是:bytes := []byte{0xD4,0x68,0x91,0x4A}结果浮点值必须为-731344566

最佳答案

看起来这是一个很大的endian int值。使用encoding/binary包:

    var v int32
    b := []byte{0xD4,0x68,0x91,0x4A}
    buf := bytes.NewReader(b)
    err := binary.Read(buf, binary.BigEndian, &v)
    f:=float64(v)

关于go - 如何将十六进制 slice 转换为带二进制补码的 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63295094/

相关文章:

assembly - go 编译器生成的汇编代码中的这种模式是什么?

set - 检查字符串 slice 是否包含 Go 中的某个值

java - 将 Java main 转换为 Android Extend Activity

c - 十六进制到十进制的转换

C:读取以 ASCII 编写的十六进制

go - go map值和nil之间的差异

go - IP 地址从 maxAddress 开始

c# - SSIS脚本组件转换C#代码日期转换

python - 将整数列表转换为十六进制表示的函数

javascript - 正则表达式匹配 3 或 6 类型