_vprintf_p, _vprintf_p_l, _vwprintf_p, _vwprintf_p_l
Schreibt mithilfe eines Zeiger auf eine Liste von Argumenten eine formatierte Ausgabe und ermöglicht die Angabe der Reihenfolge, in der die Argumente verwendet werden.
int _vprintf_p(
const char *format,
va_list argptr
);
int _vprintf_p_l(
const char *format,
locale_t locale,
va_list argptr
);
int _vwprintf_p(
const wchar_t *format,
va_list argptr
);
int _vwprintf_p_l(
const wchar_t *format,
locale_t locale,
va_list argptr
);
Parameter
format
Formatangabe.argptr
Zeiger zur Liste der Argumente.locale
Das zu verwendende Gebietsschema.
Weitere Informationen finden Sie unter Formatangaben.
Rückgabewert
_vprintf_p und _vwprintf_p geben die Anzahl der geschriebenen Zeichen ohne das abschließende Nullzeichen zurück oder einen negativen Wert, wenn ein Ausgabefehler auftritt.
Hinweise
Jede dieser Funktionen verwendet einen Zeiger auf eine Argumentliste und formatiert und schreibt anschließend die vorhandenen Daten in stdout. Diese Funktionen unterscheiden sich von vprintf_s und vwprintf_s nur darin, dass sie es ermöglichen, die Reihenfolge anzugeben, in der die Argumente verwendet werden. Weitere Informationen finden Sie unter printf_p-Positionsparameter.
_vwprintf_p ist die Breitzeichenversion von _vprintf_p; die zwei Funktionen verhalten sich identisch, wenn der Stream im ANSI-Modus geöffnet ist. _vprintf_p unterstützt derzeit die Ausgabe in einen UNICODE-Stream nicht.
Die Versionen dieser Funktionen mit dem _l-Suffix sind beinahe identisch, verwenden jedoch den ihnen übergebenen Gebietsschemaparameter anstelle des aktuellen Threadgebietsschemas.
Sicherheitshinweis |
---|
Stellen Sie sicher, dass format keine benutzerdefinierte Zeichenfolge ist.Weitere Informationen finden Sie unter Vermeiden von Pufferüberläufen. |
Wenn format ein NULL-Zeiger ist oder wenn Formatzeichenfolge ungültige Formatierungszeichen enthält, wird der Handler für ungültige Parameter aufgerufen, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, geben die Funktionen – 1 zurück und legen errno auf EINVAL fest.
Zuordnung generischer Textroutinen
TCHAR.H-Routine |
_UNICODE & _MBCS nicht definiert |
_MBCS definiert |
_UNICODE definiert |
---|---|---|---|
_vtprintf_p |
_vprintf_p |
_vprintf_p |
_vwprintf_p |
_vtprintf_p_l |
_vprintf_p_l |
_vprintf_p_l |
_vwprintf_p_l |
Anforderungen
Routine |
Erforderlicher Header |
Optionale Header |
---|---|---|
_vprintf_p, _vprintf_p_l |
<stdio.h> und <stdarg.h> |
<varargs.h>* |
_vwprintf_p, _vwprintf_p_l |
<stdio.h> oder <wchar.h> und <stdarg.h> |
<varargs.h>* |
* Benötigt für die Kompatibilität mit UNIX V.
Die Konsole wird in Windows Store-Apps nicht unterstützt. Die mit der Konsole verknüpften Standardstreamhandles, stdin, stdout und stderr, müssen umgeleitet werden, bevor sie von C-Laufzeitfunktionen in Windows Store-Apps verwendet werden können. Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.
.NET Framework-Entsprechung
Siehe auch
Referenz
_fprintf_p, _fprintf_p_l, _fwprintf_p, _fwprintf_p_l
_printf_p, _printf_p_l, _wprintf_p, _wprintf_p_l
_sprintf_p, _sprintf_p_l, _swprintf_p, _swprintf_p_l
vsprintf_s, _vsprintf_s_l, vswprintf_s, _vswprintf_s_l
va_arg, va_copy, va_end, va_start
_vfprintf_p, _vfprintf_p_l, _vfwprintf_p, _vfwprintf_p_l