Syntaxe :
#include <cstdarg> #include <cstdio> int vscanf(char *format, va_list arg_ptr); int vfscanf(FILE *flux, const char *format, va_list arg_ptr); int vsscanf(char *buf, char *format, va_list arg_ptr);
Ces fonction sont très semblables à scanf(), fscanf() et
sscanf(). La différence est que la liste des arguments est un pointeur
vers une liste d'arguments.
va_list est définie dans <cstdarg> et est également utilisée par va_arg.
Par exemple :
int scanf_(char *fmt, ... ) { va_list args; va_start(args, fmt); int r = vscanf(fmt, args); scanf("%*[^\n]") //Vide le buffer (tampon) va_end(args); return r; }