Golang Printf、Sprintf 、Fprintf 格式化

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_43475507/article/details/84593066
	/*
		%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")
   
展开阅读全文

没有更多推荐了,返回首页