/* process format char */
switch (*fmt++) {
+ case '%': /* percent */
+ *str++ = '%';
+ break;
case 'c': /* char */
c = (char) va_arg (ap, int);
*str++ = c;
*str++ = '-';
f = -f;
}
- t = getexponant (&f, -6);
+ if (sz == 0) sz = 6;
+ t = getexponant (&f, -sz);
u = (int)f;
str = itoa (str, u, 0);
- d = (int)((f - u) * tenpower (6));
+ d = (int)((f - u) * tenpower (sz));
if (d > 0) {
*str++ = '.';
- str = itoa (str, d, 6);
+ str = itoa (str, d, sz);
}
while (*(str - 1) == '0') {
str--;