vsscanf_s, vswscanf_s

De RAD Studio
Aller à : navigation, rechercher

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++

+

+

+

Voir aussi