docs: fmt 标准库

This commit is contained in:
Shikong 2021-09-12 20:56:55 +08:00
parent 9262520ce6
commit 0b8021a283

59
base/fmt/main.go Normal file
View File

@ -0,0 +1,59 @@
package main
import "fmt"
type typeTest struct {
text string
}
func main() {
var a = 1 << 10
fmt.Printf("var a = 1 << 10\n")
// %T 查看类型
// %% 转义%
fmt.Printf("类型 %%T => %T\n", a)
// %b 输出二进制
fmt.Printf("二进制 %%b: %b\t", a)
// %o 输出八进制
fmt.Printf("八进制 %%o: %o\t", a)
// %d 输出十进制
fmt.Printf("十进制 %%d: %d\t", a)
// %x 输出十六进制
fmt.Printf("十六进制 %%x: %x\n", a)
fmt.Println("=========================================================")
var b float64 = 1.0 << 10
fmt.Printf("var b float64 = 1.0 << 10\n")
fmt.Printf("类型 %%T => %T\n", b)
// %e 科学计数法,例如 -1234.456e+78
// %E 科学计数法,例如 -1234.56E+78
fmt.Printf("科学计数法 %%e: %e\t", b)
// %f 有小数点而无指数,例如 123.4556
fmt.Printf("浮点数 %%f: %f\t", b)
// %g 根据情况选择 %e 或 %f 以产生更紧凑的输出
// %G 根据情况选择 %E 或 %f 以产生更紧凑的输出
fmt.Printf("自动选择 %%e 或 %%f %%g: %g\n", b)
fmt.Println("=========================================================")
var s = "text"
fmt.Printf("var s = \"text\"\n")
fmt.Printf("类型 %%T => %T\n", s)
// %s 输出字符串
fmt.Printf("字符串 %%s: %s\n", s)
fmt.Println("=========================================================")
var t = typeTest{text: s}
fmt.Printf("var t = typeTest{text: s}\n")
fmt.Printf("类型 %%T => %T\n", t)
// %v 按默认格式输出
fmt.Printf("按默认格式输出 %%v: %v\t", t)
// %+v 在%v的基础上额外输出字段名
fmt.Printf("在%%v的基础上额外输出字段名 字符串 %%+v: %+v\t", t)
// %#v 在%+v的基础上额外输出类型名
fmt.Printf("在%%+v的基础上额外输出类型名 %%#v: %#v\t", t)
}