is printf() broken?
Steve Kargl
sgk at troutmask.apl.washington.edu
Sun Sep 5 12:36:41 PDT 2004
The following program
#include <stdio.h>
int main(void) {
int d;
double x;
x = 1.234E05;
for (d = 0; d < 5; d++)
printf("%+-31.*e\n", d, x);
return 0;
}
generates
+1e+05
+1.2e+05
+1.23e+05
+1.234e+05
+1.2340e+05
The question is whether the first number should be
"+1.e+05". That is, is the printing of the decimal
point required or optional? I only have Harbison
and Steele's book and it does not state what the
expected behavior should be.
--
Steve
More information about the freebsd-standards
mailing list