go语言中怎样读取一个浮点数的某一个数字
时间: 2023-08-04 09:22:57 浏览: 100
如果你要读取浮点数的某一个数字,可以先将浮点数转换为字符串,然后再通过字符串下标访问相应的字符。
例如,假设我们要读取浮点数 `3.1415926` 的第 3 个数字,可以使用如下代码:
```go
package main
import (
"fmt"
"strconv"
)
func main() {
f := 3.1415926
s := strconv.FormatFloat(f, 'f', -1, 64)
fmt.Println(s[2]) // 输出:49
}
```
上述代码中,我们先将浮点数 `f` 转换为字符串 `s`,然后通过下标访问字符串 `s` 中的第 3 个字符,即 `s[2]`。由于 Go 语言中的字符串实际上是一个字节数组,因此 `s[2]` 的值为字符 `1` 对应的 ASCII 码值 49。
如果需要将字符 `1` 的 ASCII 码值转换为数字 `1`,可以使用 `strconv.Atoi()` 函数进行转换:
```go
package main
import (
"fmt"
"strconv"
)
func main() {
f := 3.1415926
s := strconv.FormatFloat(f, 'f', -1, 64)
num, _ := strconv.Atoi(string(s[2]))
fmt.Println(num) // 输出:1
}
```
上述代码中,我们使用 `strconv.Atoi()` 函数将字符 `1` 对应的 ASCII 码值转换为数字 `1`,并将转换后的数字输出到控制台。注意,由于 `strconv.Atoi()` 函数返回两个值,因此我们使用了一个空白标识符 `_` 来忽略第二个返回值。
阅读全文