Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Každá funkce vprintf vezme ukazatel na seznam argumentů a pak naformátuje a zapíše daná data do konkrétního cíle. Funkce se liší několika způsoby: v ověření parametru, ať už funkce přebírají řetězce s jedním bajtem nebo širokými znaky, výstupní cíl a podporu pro zadání parametrů pořadí se používají ve formátovacím řetězci.
_vcprintf, _vcwprintf
vfprintf, vfwprintf
_vfprintf_p, _vfprintf_p_l, , _vfwprintf_p_vfwprintf_p_l
vfprintf_s, _vfprintf_s_l, , vfwprintf_s_vfwprintf_s_l
vprintf, vwprintf
_vprintf_p, _vprintf_p_l, , _vwprintf_p_vwprintf_p_l
vprintf_s, _vprintf_s_l, , vwprintf_s_vwprintf_s_l
_vscprintf, _vscprintf_l, , _vscwprintf_vscwprintf_l
_vsnprintf, , _vsnwprintfvsprintfvswprintf
_vsprintf_p, _vsprintf_p_l, , _vswprintf_p_vswprintf_p_l
vsprintf_s, _vsprintf_s_l, , vswprintf_s_vswprintf_s_l
Poznámky
Funkce vprintf jsou podobné funkcím jejich protějšku, jak je uvedeno v následující tabulce. Každá vprintf funkce však přijímá ukazatel na seznam argumentů, zatímco každá funkce protějšku přijímá seznam argumentů.
Tyto funkce formátují data pro výstup do cílů následujícím způsobem.
| Function | Funkce protějšek | Cíl výstupu | Ověřování parametru | Podpora pozičních parametrů |
|---|---|---|---|---|
_vcprintf |
_cprintf |
konzola | Zkontrolujte hodnotu null. | ne |
_vcwprintf |
_cwprintf |
konzola | Zkontrolujte hodnotu null. | ne |
vfprintf |
fprintf |
stream |
Zkontrolujte hodnotu null. | ne |
vfprintf_p |
fprintf_p |
stream |
Zkontrolujte hodnotu null a platný formát. | ano |
vfprintf_s |
fprintf_s |
stream |
Zkontrolujte hodnotu null a platný formát. | ne |
vfwprintf |
fwprintf |
stream |
Zkontrolujte hodnotu null. | ne |
vfwprintf_p |
fwprintf_p |
stream |
Zkontrolujte hodnotu null a platný formát. | ano |
vfwprintf_s |
fwprintf_s |
stream |
Zkontrolujte hodnotu null a platný formát. | ne |
vprintf |
printf |
stdout |
Zkontrolujte hodnotu null. | ne |
vprintf_p |
printf_p |
stdout |
Zkontrolujte hodnotu null a platný formát. | ano |
vprintf_s |
printf_s |
stdout |
Zkontrolujte hodnotu null a platný formát. | ne |
vwprintf |
wprintf |
stdout |
Zkontrolujte hodnotu null. | ne |
vwprintf_p |
wprintf_p |
stdout |
Zkontrolujte hodnotu null a platný formát. | ano |
vwprintf_s |
wprintf_s |
stdout |
Zkontrolujte hodnotu null a platný formát. | ne |
vsprintf |
sprintf |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null. | ne |
vsprintf_p |
sprintf_p |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null a platný formát. | ano |
vsprintf_s |
sprintf_s |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null a platný formát. | ne |
vswprintf |
swprintf |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null. | ne |
vswprintf_p |
swprintf_p |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null a platný formát. | ano |
vswprintf_s |
swprintf_s |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null a platný formát. | ne |
_vscprintf |
_vscprintf |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null. | ne |
_vscwprintf |
_vscwprintf |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null. | ne |
_vsnprintf |
_snprintf |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null. | ne |
_vsnwprintf |
_snwprintf |
paměť, na kterou odkazuje buffer |
Zkontrolujte hodnotu null. | ne |
Argument argptr má typ va_list, který je definován v VARARGS. H a STDARG.H. Proměnná argptr musí být inicializována va_start a může být znovu inicializována následnými va_arg voláními; argptr pak odkazuje na začátek seznamu argumentů, které jsou převedeny a přenášeny pro výstup podle odpovídajících specifikací v argumentuformat. format má stejný tvar a funkci jako format argument pro printf. Žádná z těchto funkcí nevolá va_end. Podrobnější popis jednotlivých vprintf funkcí najdete v popisu jeho funkce protějšku, jak je uvedeno v předchozí tabulce.
_vsnprintf se liší od vsprintf toho, že zapisuje maximálně count bajty do buffer.
Verze těchto funkcí s příponou wfix v názvu jsou širokoznační verze odpovídajících funkcí bez přípony w ; v každé z těchto širokoúhlých funkcí buffer a format jsou řetězce širokého znaku. Jinak se každá funkce širokého znaku chová stejně jako funkce protějšek SBCS.
Verze těchto funkcí s příponami _s _p jsou bezpečnější verze. Tyto verze ověřují formátovací řetězce. Vygenerují výjimku, pokud formátovací řetězec není správně vytvořený (například pokud se použijí neplatné znaky formátování).
Verze těchto funkcí s příponou _p umožňují určit pořadí, ve kterém jsou zadané argumenty nahrazeny ve formátovacím řetězci. Další informace najdete v tématu printf_p poziční parametry.
Pro vsprintf, vswprintf_vsnprintf a _vsnwprintf, pokud kopírování probíhá mezi řetězci, které se překrývají, chování není definováno.
Důležité
Ujistěte se, že format není uživatelem definovaný řetězec. Další informace najdete v tématu Zabránění přetečení vyrovnávací paměti. Pokud používáte zabezpečené verze těchto funkcí (buď _s _p přípony), řetězec formátu zadaný uživatelem může aktivovat neplatnou výjimku parametru, pokud řetězec zadaný uživatelem obsahuje neplatné znaky formátování.
Viz také
Vstupně-výstupní operace streamu
fprintf, _fprintf_l, , fwprintf_fwprintf_l
printf, _printf_l, , wprintf_wprintf_l
sprintf, _sprintf_l, swprintf, , _swprintf_l__swprintf_l
va_arg, va_copy, , va_endva_start