Считать ввод и строки (varargs)
#include <stdio.h>#include <stdarg.h>int vsscanf( const char *in_string,const char *format,va_list arg );
libc
Функция vsscanf() считывает данные в соответствии с format из строки in_string.
Функция vsscanf() является “varargs” версией функции sscanf().
Количество входных аргументов, значения которых были успешно считаны и записаны, или EOF
если был достигнут конец входного потока до окончания считывания всех значений.
#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);}
ANSI, POSIX 1003.1
Функция безопасна для вызова в обработчике сигналов, если аргументы не числа с плавающей точкой.
fscanf(), fwscanf(), scanf(), sscanf(), swscanf(), va_start(), vfscanf(), vfwscanf(), vscanf(), vswscanf(), vwscanf(), wscanf()
Предыдущий раздел: Описание API системной библиотеки