将字符串转换为float32?

Gam*_*007 13 go

我需要从控制台读取一个输入作为字符串,然后操纵字符串并将其中的一些转换为float32.

我尝试过使用:

float, _ := strconv.ParseFloat(myString, 32)
Run Code Online (Sandbox Code Playgroud)

但它不起作用.这是我得到的错误:

不能在字段值中使用float(类型为float64)作为float32类型

还有什么我可以做的吗?谢谢!

Tim*_*per 16

float有类型float32,但strconv.ParseFloat返回float64.您需要做的就是转换结果:

// "var float float32" up here somewhere
value, err := strconv.ParseFloat(myString, 32)
if err != nil {
    // do something sensible
}
float = float32(value)
Run Code Online (Sandbox Code Playgroud)

根据具体情况,将float类型更改为更好float64.