在 Go 语言的 fmt
包中,占位符用于格式化输出,允许在输出时插入变量的值。以下是一些常用的占位符及其用法:
-
通用占位符:
%v
:按照值的默认格式输出。%+v
:输出结构体时,会添加字段名。%#v
:输出 Go 语法表示的值。%T
:输出变量的类型。%%
:输出百分号。
-
布尔值占位符:
%t
:格式化布尔值。
-
整数占位符:
%b
:以二进制形式输出。%c
:输出字符。%d
:以十进制形式输出。%o
:以八进制形式输出。%x
:以十六进制形式输出,字母小写。%X
:以十六进制形式输出,字母大写。%U
:Unicode 格式输出。
-
浮点数占位符:
%e
:科学计数法,小写 "e"。%E
:科学计数法,大写 "E"。%f
:标准计数法。%g
:根据实际情况选择%e
或%f
。%G
:根据实际情况选择%E
或%f
.
-
字符串和字节切片占位符:
%s
:输出字符串。%q
:输出带双引号的字符串。%x
:以十六进制形式输出字符串。%p
:以十六进制形式输出指针。
-
指针占位符:
%p
:输出指针地址。
-
宽度和精度:
占位符可以使用数字来控制宽度和精度,如
%5.2f
表示总宽度为 5,小数点后保留 2 位。
下面是一个使用占位符的示例:
package main
import "fmt"
func main() {
name := "Alice"
age := 30
height := 175.5
fmt.Printf("Name: %s, Age: %d, Height: %.2f\n", name, age, height)
// Output: Name: Alice, Age: 30, Height: 175.50
}
请注意,Go 中的占位符与 C 语言中的 printf
函数使用的占位符类似,但有一些细微的差异,所以在使用时需要注意一些区别。要了解更多占位符和用法,可以查阅官方文档:fmt 包文档。