scan input from a string
#include <stdio.h> #include <stdarg.h> int vsscanf( const char *in_string, const char *format, va_list arg );
The vsscanf() function scans input from the string designated by in_string, under control of the argument format. The format string is described under the description of the scanf() function.
The vsscanf() function is equivalent to the sscanf() function, with a variable argument list replaced with arg, which has been initialized using the va_start()macro.
The vsscanf() function returns EOF when the scanning is terminated by reaching the end of the input string. Otherwise, the number of input arguments for which values were successfully scanned and stored is returned.
cscanf(), fscanf(), scanf(), sscanf() , va_arg(), va_end(), va_start() , vcscanf(), vfscanf(), vscanf()
#include <stdio.h> #include <stdarg.h> void sfind( char *string, char *format, ... ) { va_list arglist; va_start( arglist, format ); vsscanf( string, format, arglist ); va_end( arglist ); } void main() { int day, year; char weekday[10], month[12]; sfind( "Saturday April 18 1987", "%s %s %d %d", weekday, month, &day, &year ); printf( "\n%s, %s %d, %d\n", weekday, month, day, year ); }
WATCOM
All (except DOS/PM)