_cprintf_p, _cprintf_p_l, _cwprintf_p, _cwprintf_p_l
Formaty i na wydruku do konsoli, z obsługą parametrów pozycyjne w ciągu formatu.
Ważne |
---|
Ten interfejs API nie można używać w aplikacji, których wykonywanie w czasie wykonywania systemu Windows.Aby uzyskać więcej informacji, zobacz CRT funkcje nie obsł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 sterowania formatem.argument
Parametry opcjonalne.locale
Ustawienia regionalne używane.
Wartość zwracana
Liczba znaków drukowanych lub wartość ujemną, w przypadku wystąpienia błędu.
Uwagi
Te funkcje formatować i drukować szereg znaków i wartości bezpośrednio do konsoli, za pomocą _putch i _putwch funkcje do znaków danych wyjściowych.Każdy argument (jeśli istnieje) jest konwertowany i wyjście według specyfikacji formatu w format.Format ma takie same tworzą i funkcjonować jako format parametr dla printf_p funkcji.Różnica między _cprintf_p i cprintf_s jest to, że _cprintf_p obsługuje parametrów pozycyjne, które umożliwia określenie kolejności, w którym argumenty są używane w ciągu formatu.Aby uzyskać więcej informacji, zobacz printf_p parametry pozycyjne.
W przeciwieństwie do fprintf_p, printf_p, i sprintf_p funkcji, ani _cprintf_p ani _cwprintf_p tłumaczy znaki wysuwu wiersza na return–line przewozu paszy kombinacje (CR-LF) podczas drukowania.Istotna różnica jest to, że _cwprintf_p są wyświetlane znaki Unicode w systemie Windows NT.W przeciwieństwie do _cprintf_p, _cwprintf_p używa bieżącego ustawienia regionalne konsoli.
Wersje te funkcje za pomocą _l sufiks są identyczne z tym, że używają parametru ustawień regionalnych, przekazany zamiast bieżących ustawień regionalnych.
Uwaga dotycząca zabezpieczeń |
---|
Zapewnienia, że format nie jest ciągiem zdefiniowane przez użytkownika. |
Ponadto, jak _cprintf_s i _cwprintf_s, one sprawdzić poprawność wskaźnik wejściowych i ciąg formatu.Jeśli format lub argument są NULL, lub formatu ciąg zawiera nieprawidłowe znaki formatowania, tych funkcji WYWOŁAJ obsługi nieprawidłowy parametr, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może kontynuować, funkcje zwracają wartość -1 i ustawić errno do EINVAL.
Tekst rodzajowy rutynowych mapowania
Rozpoczęto wykonywanie procedury TCHAR.h |
_UNICODE i _MBCS nie zdefiniowany |
_MBCS, definicja |
_UNICODE, definicja |
---|---|---|---|
_tcprintf_p |
_cprintf_p |
_cprintf_p |
_cwprintf_p |
_tcprintf_p_l |
_cprintf_p_l |
_cprintf_p_l |
_cwprintf_p_l |
Wymagania
Rozpoczęto wykonywanie procedury |
Wymaganego nagłówka |
---|---|
_cprintf_p,_cprintf_p_l |
<conio.h> |
_cwprintf_p,_cwprintf_p_l |
<conio.h> |
Informacji dotyczących zgodności, zobacz Zgodność we wprowadzeniu.
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
_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