From df108ca324149ec4beceb880a7ac265679df1dff Mon Sep 17 00:00:00 2001 From: Mark Dickinson Date: Wed, 29 Apr 2009 21:56:53 +0000 Subject: Remove format_float and use _PyOS_double_to_string instead. --- Python/pystrtod.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'Python/pystrtod.c') diff --git a/Python/pystrtod.c b/Python/pystrtod.c index 2df4e3d0ad..30dd4e5394 100644 --- a/Python/pystrtod.c +++ b/Python/pystrtod.c @@ -595,6 +595,20 @@ PyOS_ascii_formatd(char *buffer, return buffer; } +/* Precisions used by repr() and str(), respectively. + + The repr() precision (17 significant decimal digits) is the minimal number + that is guaranteed to have enough precision so that if the number is read + back in the exact same binary value is recreated. This is true for IEEE + floating point by design, and also happens to work for all other modern + hardware. + + The str() precision (12 significant decimal digits) is chosen so that in + most cases, the rounding noise created by various operations is suppressed, + while giving plenty of precision for practical use. + +*/ + PyAPI_FUNC(void) _PyOS_double_to_string(char *buf, size_t buf_len, double val, char format_code, int precision, -- cgit v1.2.1