vsscanf_s, vswscanf_s
Remonter à stdio.h - Index
Fichier en-tête
stdio.h
Catégorie
Fonctions d'entrée/sortie formatées
Prototype
int vsscanf_s(const char * restrict s, const char * restrict format, va_list arg);
int vswscanf_s(const wchar_t * restrict s, const wchar_t * restrict format, va_list arg);
Description
Remplace vsscanf en ajoutant des améliorations relatives à la sécurité.
vsscanf_s est équivalente à sscanf_s, swscanf_s avec la liste d'arguments remplacée par arg.
vsscanf_s n'appelle pas la macro va_end.
Valeur renvoyée
vsscanf_s renvoie le nombre de champs d'entrée correctement analysés, convertis et stockés. La valeur renvoyée n'inclut pas les champs analysés qui n'ont pas été stockés. Si aucun champ n'a été stocké, la valeur renvoyée est zéro. En cas d'erreur d'entrée, vsscanf_s renvoie la valeur de la macro EOF.
Exemple
#include <stdio.h> #include <stdarg.h> char buffer[80] = "30 90.0 abc"; int vssf(char *fmt, ...) { va_list argptr; int cnt; fflush(stdin); va_start(argptr, fmt); cnt = vsscanf_s(buffer, fmt, argptr); va_end(argptr); return(cnt); } int main(void) { int inumber; float fnumber; char string[80]; vssf("%d %f %s", &inumber, &fnumber, string); printf("%d %f %s\n", inumber, fnumber, string); return 0; }
Portabilité
POSIX | Win32 | ANSI C | ANSI C++ |
---|---|---|---|
+ |
+ |
+ |