/* %v 输出结构体 {10 30} %+v 输出结构体显示字段名 {one:10 tow:30} %#v 输出结构体源代码片段 main.Point{one:10, tow:30} %T 输出值的类型 main.Point %t 输出格式化布尔值 true %d`输出标准的十进制格式化 100 %b`输出标准的二进制格式化 99 对应 1100011 %c`输出定整数的对应字符 99 对应 c %x`输出十六进制编码 99 对应 63 %f`输出十进制格式化 99 对应 63 %e`输出科学技科学记数法表示形式 123400000.0 对应 1.234000e+08 %E`输出科学技科学记数法表示形式 123400000.0 对应 1.234000e+08 %s 进行基本的字符串输出 "\"string\"" 对应 "string" %q 源代码中那样带有双引号的输出 "\"string\"" 对应 "\"string\"" %p 输出一个指针的值 &jgt 对应 0xc00004a090 % 后面使用数字来控制输出宽度 默认结果使用右对齐并且通过空格来填充空白部分 %2.2f 指定浮点型的输出宽度 1.2 对应 1.20 %*2.2f 指定浮点型的输出宽度对齐,使用 `-` 标志 1.2 对应 *1.20 */ jgt := Point{10,30} fmt.Printf("%v\n",jgt) // {10 30} fmt.Printf("%+v\n",jgt) // {one:10 tow:30} fmt.Printf("%#v\n",jgt) // main.Point{one:10, tow:30} fmt.Printf("%T\n",jgt) // main.Point fmt.Printf("%t\n",true) // true fmt.Printf("%d\n",100) // 100 fmt.Printf("%b\n",99) // 99 对应 1100011 fmt.Printf("%c\n",99) // 99 对应 c fmt.Printf("%x\n",99) // 99 对应 63 fmt.Printf("%f\n",99.9) // 99.9 对应 99.900000 fmt.Printf("%e\n",123400000.0) // 123400000.0 对应 1.234000e+08 fmt.Printf("%E\n",123400000.0) // 123400000.0 对应 1.234000e+08 fmt.Printf("%s\n","\"string\"") // "\"string\"" 对应 "string" fmt.Printf("%q\n","\"string\"") // "\"string\"" 对应 "string" fmt.Printf("%p\n",&jgt) // &jgt 对应 0xc00004a090 fmt.Printf("%6d\n",8) // &jgt 对应 0xc00004a090 fmt.Printf("%2.2f\n",1.2 ) // 1.2 对应 1.20 fmt.Printf("*%2.2f\n",1.2 ) // 1.2 对应 *1.20 // 输出格式化的字符串。`Sprintf` 则格式化并返回一个字 符串而不带任何输出。 s := fmt.Sprintf("是字符串 %s ","string") fmt.Println(s) // 是字符串 %s 对应 是字符串 string // 你可以使用 `Fprintf` 来格式化并输出 fmt.Fprintf(os.Stderr, "格式化 %s\n", "error")
原文地址:https://www.cnblogs.com/dfsxh/p/10316601.html
时间: 2024-10-09 02:16:37