printf() Default Floating-Point Precision Is 6 Decimals

Veralteter Haftungsausschluss für KB-Inhalte

Dieser Artikel wurde für Produkte geschrieben, für die Microsoft keinen Support mehr anbietet. Deshalb wird dieser Artikel im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.

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);
Eigenschaften

Artikelnummer: 29557 – Letzte Überarbeitung: 11.12.2003 – Revision: 1

Feedback