golang fmt包中*printf函数显式指定参数索引

在Printf、Sprintf、Fprintf三个函数中,默认的行为是对每一个格式化verb依次对应调用成功传递进来的参数。

如果需要显式指定格式化那个参数,可以在格式化verb前增加[n] (n表示第n个参数,索引是从1开始)  例如( %[2]d )

如果需要指定浮点数的宽度和精度可以写成[n]*的格式,例如([n]*f)

需要注意的是 在处理完方括号表达式[n]后,默认 后面的格式化verb  会接着处理参数n+1,n+2……

	fmt.Printf("%[2]d %[1]d\n", 11, 22) //输出  22 11
	fmt.Printf("%[3]*.[2]*[1]f\n", 12.0, 2, 6) //输出  12.00
	fmt.Printf("%d %d %#[1]x %#x\n", 16, 17)  //输出   16 17 0x10 0x11

猜你喜欢

转载自blog.csdn.net/u014270740/article/details/89352587