Scan input from a string (varargs)
#include <stdio.h>
#include <stdarg.h>
int vsscanf( const char* in_string,
const char* format,
va_list arg );
BlackBerry 10.0.0
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The vsscanf() function scans input from the string designated by in_string, under control of the argument format.
The vsscanf() function is a "varargs" version of sscanf() .
The number of input arguments for which values were successfully scanned and stored is returned, or EOF when the scanning is terminated by reaching the end of the input string.
#include <stdio.h>
#include <stdarg.h>
#include <stdlib.h>
void sfind( char* string, char* format, ... )
{
va_list arglist;
va_start( arglist, format );
vsscanf( string, format, arglist );
va_end( arglist );
}
int main( void )
{
int day, year;
char weekday[10], month[12];
sfind( "Monday June 28 1999",
"%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 | No |
| Interrupt handler | No |
| Signal handler | Read the Caveats |
| Thread | Yes |
It's safe to call vsscanf() in a signal handler if the data isn't floating point.