【发布时间】:2015-08-11 04:57:14
【问题描述】:
我必须将hex,表示为strings(例如"0xC40C5253")转换为浮点值(IEEE-754 转换)。我没有设法使用 strconv.ParseFloat 函数做到这一点。还有什么我必须使用的吗?
到目前为止我找不到它。我也试过先转换成整数再转换成浮点数,结果是错误的。
我上次尝试的代码:
package main
import (
"fmt"
"strconv"
)
func main () {
x, err := strconv.ParseInt("C40C5253", 16, 64)
f, err := strconv.ParseFloat(fmt.Sprintf("%d", x), 64)
if err != nil {
fmt.Printf("Error in conversion: %s\n", err)
} else {
fmt.Println(f)
}
}
【问题讨论】:
-
我从你的代码中得到
3.289141843e+09。这是正确的吗?
标签: go floating-point hex type-conversion