Files
QNX/lib/c/stdio/vsscanf.c
2025-08-20 19:02:58 +08:00

37 lines
763 B
C

/* vsscanf function */
#include <string.h>
#include "xstdio.h"
_STD_BEGIN
static int scin(void *str, int ch, int getfl)
{ /* get or put a character */
char *s = *(char **)str;
if (!getfl)
{ /* back up a char */
*(char **)str = s - 1;
return (ch);
}
else if (*s == '\0')
return (EOF);
else
{ /* deliver a char */
*(char **)str = s + 1;
return (*s);
}
}
int (vsscanf)(const char *_Restrict buf, const char *_Restrict fmt,
va_list ap)
{ /* read formatted from string to arg list */
return (_Scanf(&scin, (void **)&buf, fmt, ap, 0));
}
_STD_END
/*
* Copyright (c) 1992-2006 by P.J. Plauger. ALL RIGHTS RESERVED.
* Consult your license regarding permissions and restrictions.
V5.00:1296 */
__SRCVERSION("vsscanf.c $Rev: 153052 $");