6 char *fcvt(double x
, int n
, int *dp
, int *sign
)
11 if (n
> 1400U) n
= 1400;
12 sprintf(tmp
, "%.*f", n
, x
);
14 if (tmp
[i
] == '0') lz
= strspn(tmp
+i
+2, "0");
15 else lz
= -(int)strcspn(tmp
+i
, ".");
21 return "000000000000000"+14-n
;
24 return ecvt(x
, n
-lz
, dp
, sign
);