19 #include "simpletext.h" 21 static const char* trim(
const char* str)
29 static const char* _scanf_gets(
const char *str,
char* dst,
unsigned width,
int gettingChars)
31 while (width-- && *str && (gettingChars || !isspace(*str)))
40 int _doscanf(
const char* str,
const char *fmt, va_list args)
45 while (str && *str && (fch = *fmt++))
49 int isWhiteSpaceOK = 0;
56 else if (*str++ != fch)
64 fmt = _scanf_getl(fmt, &width, 10, 11, 0);
67 if (fch !=
'c' && fch !=
'%')
83 if (width == ULONG_MAX)
87 char* arg = va_arg(args,
char*);
88 if ((str = _scanf_gets(str, arg, width, isWhiteSpaceOK)))
93 int* arg = va_arg(args,
int*);
94 if ((str = _scanf_getl(str, arg, 2, width, (fch ==
'b'))))
103 int* arg = va_arg(args,
int*);
104 if ((str = _scanf_getl(str, arg, base, width, (fch ==
'd'))))
112 float* arg = va_arg(args,
float*);
113 if ((str = _scanf_getf(str, arg)))