blob: ef584c0d548e1ea03d1cef30deacf6478efc0140 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
/*
* print_double(x) has the same effect as printf("%g", x), but is intended
* to produce the same formatting across all platforms.
*/
static void
print_double(double x)
{
#ifdef WIN32
/* Change Windows' 3-digit exponents to look like everyone else's */
char convert[128];
int vallen;
sprintf(convert, "%g", x);
vallen = strlen(convert);
if (vallen >= 6 &&
convert[vallen - 5] == 'e' &&
convert[vallen - 3] == '0')
{
convert[vallen - 3] = convert[vallen - 2];
convert[vallen - 2] = convert[vallen - 1];
convert[vallen - 1] = '\0';
}
printf("%s", convert);
#else
printf("%g", x);
#endif
}
|