vsprintf, vswprintf

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu stdio.h - Index


Header-Datei

stdio.h

Kategorie

Routinen für Speicher- und String-Bearbeitung

Prototyp

int vsprintf(char *buffer, const char *format, va_list arglist);

int vswprintf(wchar_t *buffer, const wchar_t *format, va_list arglist);

Beschreibung

Schreibt eine formatierte Ausgabe in einen Stream.

Die v...printf-Funktionen können als alternative Eintrittspunkte für die ...printf-Funktionen betrachtet werden. Sie verhalten sich genau wie ihre ...printf-Entsprechungen, akzeptieren jedoch einen Zeiger auf eine Argumentliste statt der Argumentliste selbst.

vsprintf akzeptiert einen Zeiger auf eine Argumentliste, ordnet die Argumente den Formatbezeichnern in dem String zu, auf den format zeigt, und schreibt die so formatierten Daten in einen Stream. Es müssen so viele Formatbezeichner wie Argumente vorhanden sein.

Rückgabewert

vsprintf gibt die Anzahl der ausgegebenen Bytes zurück. Wenn ein Fehler auftritt, wird EOF zurückgegeben.

Beispiel

#include <stdio.h>
#include <conio.h>
#include <stdarg.h>
char buffer[80];
int vspf(char *fmt, ...)
{
   va_list argptr;
   int cnt;
   va_start(argptr, fmt);
   cnt = vsprintf(buffer, fmt, argptr);
   va_end(argptr);
   return(cnt);
}
int main(void)
{
   int inumber = 30;
   float fnumber = 90.0;
   char string[4] = "abc";
   vspf("%d %f %s", inumber, fnumber, string);
   printf("%s\n", buffer);
   return 0;
}

Portabilität

POSIX Win32 ANSI C ANSI C++

vsprintf

+

+

+

+

vswprintf

+

+

+

Siehe auch