Scan input from a file (varargs)
#include <stdio.h> #include <stdarg.h> int vfscanf( FILE *fp, const char *format, va_list arg );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The vfscanf() function scans input from the file designated by fp, under control of the argument format.
The vfscanf() function is a “varargs” version of fscanf().
The number of input arguments for which values were successfully scanned and stored, or EOF when the scanning is stopped by reaching the end of the input stream before storing any values.
If an error occurs, errno indicates the type of error.
#include <stdio.h> #include <stdlib.h> #include <stdarg.h> void ffind( FILE *fp, char *format, ... ) { va_list arglist; va_start( arglist, format ); vfscanf( fp, format, arglist ); va_end( arglist ); } int main( void ) { int day, year; char weekday[10], month[12]; ffind( stdin, "%s %s %d %d", weekday, month, &day, &year ); printf( "\n%s, %s %d, %d\n", weekday, month, day, year ); return EXIT_SUCCESS; }
Safety: | |
---|---|
Cancellation point | Yes |
Interrupt handler | No |
Signal handler | No |
Thread | Yes |
errno, fscanf(), fwscanf(), scanf(), sscanf(), swscanf(), va_start(), vfwscanf(), vscanf(), vsscanf(), vswscanf(), vwscanf(), wscanf()