printf() Default Floating-Point Precision Is 6 Decimals

Zastrzeżenie dotyczące zawartości wycofanych artykułów z bazy wiedzy

Ten artykuł dotyczy produktów, dla których firma Microsoft nie oferuje już pomocy technicznej. Dlatego jest on udostępniany „taki, jaki jest” i nie będzie już aktualizowany.

Summary

By default, the printf() function displays a floating-point number to six digits of precision. This default also holds for double precision numbers.


To display additional digits of precision, specify a value for the precision field in the printf() format specification, as follows:
%[<flags>][<width>][.<precision>]<type>

More Information

The code example below demonstrates documented printf() behavior that may appear to be a problem with the function.

   #include <stdio.h>

main()
{
double d = 1.2345678912;

printf("%e\n", d);
printf("%le\n", d);
}
This code example produces the following output:



1.234568e+000
1.234568e+000
To display the value d to its full precision, modify the code example to use the following statement:
   printf("%.15le", d);
Właściwości

Identyfikator artykułu: 29557 — ostatni przegląd: 11.12.2003 — zmiana: 1

Opinia