Udostępnij za pośrednictwem


_cprintf_p, _cprintf_p_l, _cwprintf_p, _cwprintf_p_l

Formatuje i drukuje do konsoli oraz obsługuje parametry pozycyjne w ciągu formatu.

Ważna uwagaWażne

Tego API nie można używać w aplikacjach korzystających ze środowiska wykonawczego Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /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
    Ciąg formantu formatu.

  • argument
    Parametry opcjonalne.

  • locale
    Ustawienia regionalne do użycia.

Wartość zwracana

Liczba znaków drukowanych lub wartość ujemna, jeśli wystąpi błąd.

Uwagi

Te funkcje formatują i drukują szereg znaków i wartości bezpośrednio do konsoli, za pomocą _putch i _putwch funkcji do znaków danych wyjściowych.Każdy argument (jeśli istnieje) jest konwertowaya i wychodzi według specyfikacji formatu w format.Format ma taką samą formę i funkcjonuje jako format parametr dla printf_p funkcji.Różnica między _cprintf_p i cprintf_s polega na tym, że _cprintf_p wspiera parametry pozycyjne, które umożliwiają określenie kolejności, w której argumenty są używane w ciągu formatu.Aby uzyskać więcej informacji, zobacz printf_p Parametry pozycyjne.

W przeciwieństwie do funkcji fprintf_p, printf_p i sprintf_p, ani _cprintf_p ani _cwprintf_p nie tłumaczy znaków przesunięcia o wiersz na kombinacje znaków twardego końca wiersza (CR-LF) podczas drukowania.Istotna różnica polega na tym, że _cwprintf_p wyświetla znaki Unicode w systemie Windows NT.W przeciwieństwie do _cprintf_p, _cwprintf_p używa bieżących ustawień regionalnych konsoli.

Wersje tych funkcji, które mają przyrostek _l są identyczne, z tą różnicą, że korzystają z przekazanego parametru ustawień regionalnych, zamiast bieżących ustawień regionalnych.

Uwaga dotycząca zabezpieczeńUwaga dotycząca zabezpieczeń

Zapewnienia, że format nie jest ciągiem zdefiniowanym przez użytkownika.

Ponadto, podobnie jak _cprintf_s i _cwprintf_s, walidują one wskaźnik danych wejściowych i ciąg formatu.Jeśli format lub argument są NULL lub ciąg formatu zawiera nieprawidłowe znaki formatowania, funkcje te wywołają procedurę obsługi nieprawidłowego parametru, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może być kontynuowane, te funkcje zwracają wartość -1 i ustawiają errno na EINVAL.

Rutynowe mapowania zwykłego tekstu

Procedura Tchar.h

_UNICODE i _MBCS nie zdefiniowany

_MBCS zdefiniowano

_UNICODE zdefiniowany

_tcprintf_p

_cprintf_p

_cprintf_p

_cwprintf_p

_tcprintf_p_l

_cprintf_p_l

_cprintf_p_l

_cwprintf_p_l

Wymagania

Procedura

Wymagany nagłówek

_cprintf_p,_cprintf_p_l

<conio.h>

_cwprintf_p,_cwprintf_p_l

<conio.h>

Aby uzyskać więcej informacji na temat zgodności, zobacz Zgodność.

Przykład

// 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 );
}
  

Zobacz też

Informacje

Operacje We/Wy konsoli i portu

_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

_cprintf_s, _cprintf_s_l, _cwprintf_s, _cwprintf_s_l

printf_p Parametry pozycyjne

printf_p Parametry pozycyjne

Składnia specyfikacji formatu: funkcje printf i wprintf