This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: the "general" floating point format

On Mon, 2 Jan 2006 02:48 pm, Ian Lance Taylor wrote:
> Anthony Shipman <> writes:
> > Is there a precise specification of how printf() decides whether to use
> > the fixed point or scientific format when the format is "general"?
> I assume you are referring to %g.  The answer is yes.  From the
> GNU/Linux man page, for example (man 3 printf):
>     The double argument is converted in style f or e (or F or E for G
>     conversions).  The precision specifies the number of significant
>     digits.  If the precision is missing, 6 digits are given; if the
>     precision is zero, it is treated as 1.  Style e is used if the
>     exponent from its conversion is less than -4 or greater than or
>     equal to the precision.  Trailing zeros are removed from the
>     fractional part of the result; a decimal point appears only if it
>     is followed by at least one digit.
> Ian

Oh, I missed that bit in the middle. Is that the C standard or just how Gnu C 
does it? 

Do you know if libstdc++ uses exactly the same specification or perhaps 
delegates to printf()? (I started off searching for how the C++ "general" 
format was defined).

Anthony Shipman                    Mamas don't let your babies                   grow up to be outsourced.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]