Heim >Backend-Entwicklung >Golang >Ein Artikel zum gründlichen Verständnis von Golang-Platzhaltern
Dieser Artikel vermittelt Ihnen relevantes Wissen über Golang. Interessierte Freunde sollten einen Blick darauf werfen. Ich hoffe, dass er für alle hilfreich ist.
xdm, beim Schreiben der C/C++-Sprache gibt es Formatsteuerzeichen wie %s, %d, %c, %p usw.
Beim Schreiben von Golang gibt es auch entsprechende Formatsteuerzeichen Zeichen, auch Platzhalter genannt, benötigen Sie entsprechende Daten. Sie können damit nicht herumspielen
type Animal struct { hobby string } func main() { name := "xiaomotong" age := 19 hh := Animal{"basketball"} fmt.Printf("name = %s , age = %d , hh = %v\n\n", name, age, hh) fmt.Printf("hh = %+v , hh= %#v\n\n", hh, hh) fmt.Printf("name = %T , age = %T , hh = %T\n\n", name, age, hh) fmt.Printf("%q", 0x8989) }
# go run main.go name = xiaomotong , age = 19 , hh = {basketball} hh = {hobby:basketball} , hh= main.Animal{hobby:"basketball"} name = string , age = int , hh = main.Animal '覉'
Wir können aus dem obigen Effekt erkennen: %q stellt den Zeichenliteralwert in einfachen Anführungszeichen dar, der durch die Go-Syntax sicher maskiert wird. Wenn Sie an xdm interessiert sind, können Sie versuchen, und zu drucken Debuggen, um den Effekt zu sehen
$s stellt eine Zeichenfolge dar
$d stellt eine Dezimalzahl dar
%v stellt das Standardformat dar%+v stellt dar, dass beim Drucken der Struktur der entsprechende Feldname hinzugefügt wird
%#v stellt die Golang-Sprache der entsprechenden Datenstruktur dar. Drücken Sie die Situation aus.
Weniger häufig verwendete Platzhalter %U , %#U
Schreiben Sie weiter eine Demo, um den Effekt zu sehen. Geometrie:func main() { a := true num := 88 uni := 0x8989 fmt.Printf("%t\n", a) fmt.Printf("%b\n", num) fmt.Printf("%c\n", 0x8989) fmt.Printf("uni = %U , uni = %#U\n", uni, uni) }
# go run main.go true 1011000 覉 uni = U+8989 , uni = U+8989 '覉'
Basis- und Gleitkomma mithilfe von Platzhaltern
%2d , %07d
%x , % #x
%f , %.3f
func main() { num := 888 fNum := 888.99 fmt.Printf("num = %2d , num = %07d\n", num, num) fmt.Printf("num = %x , num = %#x\n", num, num) fmt.Printf("num = %f , num = %.3f\n", fNum, fNum) }Der obige Code Der Ausführungseffekt ist wie folgt:
jī
# go run main.go num = 888 , num = 0000888 num = 378 , num = 0x378 num = 888.990000 , num = 888.990Wir können aus dem obigen Effekt sehen: %2d bedeutet insgesamt 2 Ziffern, wenn es ist weniger als 2 Ziffern, fügen Sie davor Nullen hinzu
%f stellt Daten vom Typ Gleitkomma dar, der Standardwert ist 6 Dezimalstellen beibehalten
%.3f stellt Daten vom Typ Gleitkomma dar, 3 Dezimalstellen beibehalten
Zeigerplatzhalter
%p%#pfunc main() {
ptr := "xiaomotong"
fmt.Printf("ptr = %p , ptr = %#p\n", &ptr, &ptr)
}
# go run main.go ptr = 0xc42000e1e0 , ptr = c42000e1e0
Das obige ist der detaillierte Inhalt vonEin Artikel zum gründlichen Verständnis von Golang-Platzhaltern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!