vsscanf_s, vswscanf_s
Nach oben zu stdio.h - Index
Header-Datei
stdio.h
Kategorie
Funktionen für die formatierte Eingabe/Ausgabe
Prototyp
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);
Beschreibung
Ersetzt vsscanf und fügt Sicherheitserweiterungen hinzu.
vsscanf_s entspricht sscanf_s, swscanf_s. Die Argumentliste wird allerdings durch arg ersetzt.
vsscanf_s ruft das Makro va_end nicht auf.
Rückgabewert
vsscanf_s gibt die Anzahl erfolgreich untersuchter, konvertierter und gespeicherter Eingabefelder zurück. Die untersuchten Felder, die nicht gespeichert wurden, werden nicht gezählt. Wurden keine Felder gespeichert, ist der Rückgabewert Null. Bei einem Eingabefehler gibt vsscanf_s den Wert des Makros EOF zurück.
Beispiel
#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ät
POSIX | Win32 | ANSI C | ANSI C++ |
---|---|---|---|
+ |
+ |
+ |