#include #include #include __EXTERN int _scanf __PROTO((const char **buf, int (*get)(unsigned char **s), int (*unget)(int c, unsigned char **s), const char *fmt, va_list argp)); static int sgetc(s) unsigned char **s; { register unsigned char c; c = *(*s)++; return((c == '\0') ? EOF : c); } static int sungetc(c, s) int c; unsigned char **s; { if(c == EOF) c = '\0'; return(*--(*s) = c); } #ifdef __STDC__ int sscanf(const char *buf, const char *fmt, ...) #else int sscanf(buf, fmt) const char *buf, *fmt; #endif { va_list argp; va_start(argp, fmt); return(_scanf(&buf, sgetc, sungetc, fmt, argp)); } int vsscanf(buf, fmt, args) const char *buf; const char *fmt; va_list args; { return(_scanf(&buf, sgetc, sungetc, fmt, args)); }