_cprintf_p, _cprintf_p_l, _cwprintf_p, _cwprintf_p_l
Formáty a vytiskne v konzole, s podporou pro poziční parametry ve formátovacím řetězci.
Důležité |
---|
Toto rozhraní API nelze použít v aplikacích, které jsou spuštěny v systému Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /ZW. |
int _cprintf_p(
const char * format [,
argument] ...
);
int _cprintf_p_l(
const char * format,
locale_t locale [,
argument] ...
);
int _cwprintf_p(
const wchar * format [,
argument] ...
);
int _cwprintf_p_l(
const wchar * format,
locale_t locale [,
argument] ...
);
Parametry
format
Řízení formátu řetězce.argument
Volitelné parametry.locale
Národní prostředí pro použití.
Vrácená hodnota
Počet znaků, které jsou vytištěny nebo zápornou hodnotu, pokud dojde k chybě.
Poznámky
Tyto funkce formátování a tisk řady znaků a hodnot přímo ke konzole, použití _putch a _putwch funkce pro výstup znaků.Každý argument (je-li k dispozici) je převeden a výstup podle odpovídajícího specifikaci formátu v format.Formát má stejné formuláře a pracovat jako format parametr printf_p funkce.Rozdíl mezi _cprintf_p a cprintf_s je _cprintf_p podporuje poziční parametry, které umožňuje určit pořadí, ve kterém jsou použity argumenty ve formátovacím řetězci.Další informace naleznete v tématu printf_p poziční parametry.
Na rozdíl od fprintf_p, printf_p, a sprintf_p funguje, ani _cprintf_p ani _cwprintf_p převede znaky line feed na return–line přepravu krmiv (CR-LF) kombinace výstupu.Je důležité rozlišovat, který _cwprintf_p zobrazí znaky Unicode v systému Windows NT.Na rozdíl od _cprintf_p, _cwprintf_p používá aktuální nastavení národního prostředí konzoly.
Verze těchto funkcí se _l přípony jsou shodné s tím rozdílem, že používají parametr locale předaný namísto aktuální národní prostředí.
Poznámka k zabezpečení |
---|
Zajistit, aby format není uživatelem definovaný řetězec. |
Také jako _cprintf_s a _cwprintf_s, ověřujeme vstupní ukazatele a formátovací řetězec.Pokud format nebo argument jsou NULL, nebo formátu řetězec obsahuje neplatný formátovací znaky, tyto funkce vyvolat obslužnou rutinu neplatný parametr, jak je popsáno v Ověření parametrů.Pokud je povoleno spuštění pokračovat, vrátí tyto funkce hodnotu -1 a errno na EINVAL.
Mapování rutiny obecného textu
Byla zahájena rutina Tchar.h |
_UNICODE a _MBCS není definováno |
_MBCS, definice |
_UNICODE definována |
---|---|---|---|
_tcprintf_p |
_cprintf_p |
_cprintf_p |
_cwprintf_p |
_tcprintf_p_l |
_cprintf_p_l |
_cprintf_p_l |
_cwprintf_p_l |
Požadavky
Byla zahájena rutina |
Požadované záhlaví |
---|---|
_cprintf_p,_cprintf_p_l |
<conio.h> |
_cwprintf_p,_cwprintf_p_l |
<conio.h> |
Další informace o kompatibilitě v tématu Kompatibilita v úvodu.
Příklad
// crt_cprintf_p.c
// This program displays some variables to the console
// using the _cprintf_p function.
#include <conio.h>
int main( void )
{
int i = -16,
h = 29;
unsigned u = 62511;
char c = 'A';
char s[] = "Test";
// Note that console output does not translate
// \n as standard output does. Use \r\n instead.
_cprintf_p( "%2$d %1$.4x %3$u %4$c %5$s\r\n",
h, i, u, c, s );
}
Viz také
Referenční dokumentace
_cscanf, _cscanf_l, _cwscanf, _cwscanf_l
_cscanf_s, _cscanf_s_l, _cwscanf_s, _cwscanf_s_l
_fprintf_p, _fprintf_p_l, _fwprintf_p, _fwprintf_p_l
fprintf_s, _fprintf_s_l, fwprintf_s, _fwprintf_s_l
_printf_p, _printf_p_l, _wprintf_p, _wprintf_p_l
printf_s, _printf_s_l, wprintf_s, _wprintf_s_l
_sprintf_p, _sprintf_p_l, _swprintf_p, _swprintf_p_l
_vfprintf_p, _vfprintf_p_l, _vfwprintf_p, _vfwprintf_p_l
_cprintf_s, _cprintf_s_l, _cwprintf_s, _cwprintf_s_l