From: Rob Pike Date: Fri, 12 Oct 2012 05:16:55 +0000 (+1100) Subject: fmt: document some undocumented details X-Git-Tag: go1.1rc2~2141 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=e171b97ee69b65400dbccb6ae2528747605e1505;p=gostls13.git fmt: document some undocumented details Better explanation of width for floating-point values. Explain that scanning does not handle %#q etc. Fixes #4202. Fixes #4206. R=golang-dev, adg, rsc, iant CC=golang-dev https://golang.org/cl/6620074 --- diff --git a/src/pkg/fmt/doc.go b/src/pkg/fmt/doc.go index a9b9c9d0c2..8a2289edee 100644 --- a/src/pkg/fmt/doc.go +++ b/src/pkg/fmt/doc.go @@ -56,9 +56,12 @@ character '*', causing their values to be obtained from the next operand, which must be of type int. - For numeric values, width sets the width of the field and precision - sets the number of places after the decimal, if appropriate. For - example, the format %6.2f prints 123.45. + For numeric values, width sets the minimum width of the field and + precision sets the number of places after the decimal, if appropriate, + except that for %g/%G it sets the total number of digits. For example, + given 123.45 the format %6.2f prints 123.45 while %.4g prints 123.5. + The default precision for %e and %f is 6; for %g it is the smallest + number of digits necessary to identify the value uniquely. For strings, width is the minimum number of characters to output, padding with spaces if necessary, and precision is the maximum @@ -152,6 +155,7 @@ %T is not implemented %e %E %f %F %g %G are all equivalent and scan any floating point or complex value %s and %v on strings scan a space-delimited token + Flags # and + are not implemented. The familiar base-setting prefixes 0 (octal) and 0x (hexadecimal) are accepted when scanning integers without a