Sdílet prostřednictvím


_printf_p, _printf_p_l, _wprintf_p, _wprintf_p_l

Vytiskne formátovaný výstup do standardního výstupu datového proudu umožňuje určit pořadí, ve kterém jsou použity parametry ve formátovacím řetězci.

int _printf_p(
   const char *format [,
   argument]... 
);
int _printf_p_l(
   const char *format,
   locale_t locale [,
   argument]... 
);
int _wprintf_p(
   const wchar_t *format [,
   argument]... 
);
int _wprintf_p_l(
   const wchar_t *format,
   locale_t locale [,
   argument]... 
);

Parametry

  • format
    Formát ovládacího prvku.

  • argument
    Volitelné argumenty.

  • locale
    Národní prostředí pro použití.

Vrácená hodnota

Vrátí počet znaků, které jsou vytištěny nebo zápornou hodnotu, pokud dojde k chybě.

Poznámky

_printf_p Funkce formáty a vytiskne řadu znaků a hodnot do standardního výstupu datového proudu, stdout.Pokud argumenty format řetězce, format řetězec musí obsahovat specifikace, které určuje výstupní formát pro argumenty (viz printf_p poziční parametry).

Rozdíl mezi _printf_p a printf_s je _printf_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.

_wprintf_pje verzí širokého znaku _printf_p; chovají stejně jako v případě, že datový proud je otevřen v režimu ANSI._printf_pnepodporuje aktuálně výstup do proudu UNICODE.

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í pro vlákno.

Poznámka k zabezpečeníPoznámka k zabezpečení

Zajistit, aby format není uživatelem definovaný řetězec.

Pokud format nebo argument jsou NULL, nebo formátu řetězec obsahuje neplatný formátovací znaky, _printf_p a _wprintf_p funkce vyvolat obslužnou rutinu neplatný parametr, jak je popsáno v Ověření parametrů.Je-li pokračovat, funkce vrátí hodnotu -1 a sady je povoleno zpracování 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

_tprintf_p

_printf_p

_printf_p

_wprintf_p

_tprintf_p_l

_printf_p_l

_printf_p_l

_wprintf_p_l

Požadavky

Byla zahájena rutina

Požadované záhlaví

_printf_p, _printf_p_l

<stdio.h>

_wprintf_p, _wprintf_p_l

<stdio.h> nebo <wchar.h>

V konzole není podporována v Windows Store apps.Úchyty standardní datový proud přidružené konzoly, stdin, stdout, a stderr, musí být přesměrována před C run-time funkce lze využít v Windows Store apps.Další informace o kompatibilitě v tématu Compatibility v úvodu.

Příklad

// crt_printf_p.c
// This program uses the _printf_p and _wprintf_p
// functions to choose the order in which parameters
// are used.

#include <stdio.h>

int main( void )
{
   // Positional arguments 
   _printf_p( "Specifying the order: %2$s %3$s %1$s %4$s %5$s.\n",
              "little", "I'm", "a", "tea", "pot");

   // Resume arguments
   _wprintf_p( L"Reusing arguments: %1$d %1$d %1$d %1$d\n", 10);

   // Width argument
   _printf_p("Width specifiers: %1$*2$s", "Hello\n", 10);
}
  
  

Ekvivalent v rozhraní .NET Framework

Viz také

Referenční dokumentace

Podpora s plovoucí desetinnou čárkou

Proud I/O

Národní prostředí

fopen _wfopen

_fprintf_p, _fprintf_p_l, _fwprintf_p, _fwprintf_p_l

fprintf, _fprintf_l, fwprintf, _fwprintf_l

fprintf_s, _fprintf_s_l, fwprintf_s, _fwprintf_s_l

scanf, _scanf_l, wscanf, _wscanf_l

scanf_s, _scanf_s_l, wscanf_s, _wscanf_s_l

_sprintf_p, _sprintf_p_l, _swprintf_p, _swprintf_p_l

sprintf, _sprintf_l, swprintf, _swprintf_l, __swprintf_l

sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l

Funkce vprintf