Heim >Backend-Entwicklung >Golang >Warum verhält sich „fmt.Printf' mit „%g' und den Feldern „Breite/Präzision' unerwartet?
fmt.Printf mit Breiten- und Präzisionsfeldern in %g verhält sich unerwartet
Beim Versuch, Floats mit einer konsistenten Breite mit fmt.Printf zu formatieren () verhält es sich möglicherweise nicht wie erwartet, wenn der Formatbezeichner %g sowohl mit Breiten- als auch mit Präzisionsfeldern verwendet wird.
Laut Dokumentation legt das Präzisionsfeld für %g die Anzahl der Gesamtziffern ohne führende Stellen fest Nullen. Der %g-Formatbezeichner weist jedoch einige einzigartige Verhaltensweisen auf, die verwirrend sein können.
Führende Nullen und Ziffernzählung:
Beispiele:
Präzision und Breite:
Ihr Fall:
In Ihrem Beispiel: Sie haben .9g verwendet, was eine Mindestbreite von 10 und insgesamt 9 Ziffern angibt. Es treten jedoch die folgenden Verhaltensweisen auf:
Das obige ist der detaillierte Inhalt vonWarum verhält sich „fmt.Printf' mit „%g' und den Feldern „Breite/Präzision' unerwartet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!