猿问

Printf 中的 %g 没有像 %f 或 %e 那样给出固定的小数位

根据这些文档 %g是%e for large exponents, %f otherwise. 但是,当我这样做时:


package main


import "fmt"


func main() {

    var a float64 = 2.0

    fmt.Printf("%f\n", a)

    fmt.Printf("%e\n", a)

    fmt.Printf("%g\n", a)

}

我得到:


2.000000

2.000000e+00

2

为什么输出%g不包含固定的小数位,如%e或%f?


当年话下
浏览 280回答 1
1回答

一只斗牛犬

包文件印刷%g 的默认精度是唯一标识值所需的最小位数对于值 2.0,即一位数给出值 2。
随时随地看视频慕课网APP

相关分类

Go
我要回答