printf() Default Floating-Point Precision Is 6 Decimals

Ansvarsfriskrivning för KB-innehåll som inte uppdateras

Den här artikeln skrevs om produkter som Microsoft inte längre erbjuder support för. Därför erbjuds denna artikel "i befintligt skick" och kommer inte att uppdateras.

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

Artikel-id: 29557 – senaste granskning 11 dec. 2003 – revision: 1

Feedback