11 #include "simpletext.h" 17 int _intsprnt(
const char *fmt, va_list args,
char *obuf)
27 while( (c = *fmt++) != 0 ) {
37 if (c ==
'0') fill_char =
'0';
38 while (c && isdigit(c)) {
39 width = 10*width + (c-
'0');
45 while (c && isdigit(c)) {
46 precision = 10*precision + (c-
'0');
60 l_arg = va_arg(args,
int);
61 buf += SPUTL(l_arg, 2, width, fill_char, buf);
65 i_arg = va_arg(args,
int);
66 buf += SPUTC(i_arg, buf);
70 s_arg = va_arg(args,
char *);
71 buf += SPUTS(s_arg, buf);
76 l_arg = va_arg(args,
int);
77 if (l_arg < 0 && c ==
'd') {
78 buf += SPUTC(
'-', buf);
82 buf += SPUTL(l_arg, 10, width, fill_char, buf);
86 l_arg = va_arg(args,
unsigned int);
87 buf += SPUTL(l_arg, 16, width, fill_char, buf);