home *** CD-ROM | disk | FTP | other *** search
- /* from Dale Schumacher's dLibs */
-
- #include <stdio.h>
- #include <stdarg.h>
- #include "lib.h"
-
- typedef int (*gettype)(void *);
- typedef int (*ungettype)(int, void *);
-
- #if __STDC__
- int fscanf(FILE *fp, const char *fmt, ...)
- {
- int retval;
- va_list arg;
-
- va_start (arg, fmt);
- retval = _scanf(fp, (gettype) fgetc, (ungettype) fungetc,
- (unsigned char *) fmt, arg);
- va_end (arg);
- return retval;
- }
- #else
- int
- fscanf(fp, fmt, arg)
- FILE *fp;
- const char *fmt;
- char *arg;
- {
- return(_scanf(fp, fgetc, fungetc, fmt, &arg));
- }
- #endif /* __STDC__ */
-
- #if __STDC__
- int scanf(const char *fmt, ...)
- {
- int retval;
- va_list arg;
-
- va_start (arg, fmt);
- retval = _scanf(stdin, (gettype) fgetc, (ungettype) fungetc,
- (unsigned char *) fmt, arg);
- va_end (arg);
- return retval;
- }
- #else
- int
- scanf(fmt, arg)
- const char *fmt;
- char *arg;
- {
- return(_scanf(stdin, fgetc, fungetc, fmt, &arg));
- }
- #endif /* __STDC__ */
-
- int
- vscanf(fmt, arg)
- const char *fmt;
- va_list arg;
- {
- return(_scanf(stdin, (gettype)fgetc, (ungettype) fungetc,
- (unsigned char *) fmt, arg));
- }
-
- int
- vfscanf(fp, fmt, arg)
- FILE *fp;
- const char *fmt;
- va_list arg;
- {
- return(_scanf(fp, (gettype)fgetc, (ungettype)fungetc,
- (unsigned char *) fmt, arg));
- }
-