Udostępnij za pośrednictwem


vprintf_s, _vprintf_s_l, vwprintf_s, _vwprintf_s_l

Napisz sformatowane dane wyjściowe za pomocą wskaźnika do listy argumentów.Są to wersje vprintf, _vprintf_l, vwprintf, _vwprintf_l z ulepszeń zabezpieczeń, zgodnie z opisem w Funkcje zabezpieczeń w CRT.

int vprintf_s(
   const char *format,
   va_list argptr 
);
int _vprintf_s_l(
   const char *format,
   locale_t locale,
   va_list argptr 
);
int vwprintf_s(
   const wchar_t *format,
   va_list argptr 
);
int _vwprintf_s_l(
   const wchar_t *format,
   locale_t locale,
   va_list argptr 
);

Parametry

  • format
    Specyfikacja formatu.

  • argptr
    Wskaźnik do listy argumentów.

  • locale
    Ustawienia regionalne używane.

Aby uzyskać więcej informacji, zobacz Specyfikacji formatu.

Wartość zwracana

vprintf_si vwprintf_s zwraca liczbę znaków napisane, nie wliczając kończącego znaku null lub wartości ujemnej, jeśli wystąpi błąd danych wyjściowych.Jeśli format jest pusty wskaźnik, lub jeżeli ciąg formatu zawiera nieprawidłowe znaki formatowania, program obsługi nieprawidłowy parametr jest uruchamiane, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może kontynuować, funkcje zwracają wartość -1 i ustawić errno do EINVAL.

Aby uzyskać informacje o tych i innych kodów błędów, zobacz _doserrno, errno, _sys_errlist i _sys_nerr.

Uwagi

Każda z tych funkcji ma wskaźnik do listy argumentów, a następnie formatuje i zapisuje dane podawane do stdout.

Bezpieczne wersjach tych funkcji różnią się od vprintf i vwprintf tylko tym, że bezpieczne wersje Sprawdź, czy ciąg formatu zawiera prawidłowe znaki formatowania.

vwprintf_sjest to wersja szerokich znaków vprintf_s; dwie funkcje zachowują się identycznie, jeśli strumień jest otwarty w trybie ANSI.vprintf_saktualnie nie obsługuje dane wyjściowe do strumienia UNICODE.

Wersje te funkcje za pomocą _l sufiks są identyczne z tym, że używają przekazany zamiast bieżących ustawień regionalnych wątek parametr ustawień regionalnych.

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

Zapewnienia, że format nie jest ciągiem zdefiniowane przez użytkownika.Aby uzyskać więcej informacji, zobacz Unikanie przekroczeniem buforu.

Tekst rodzajowy rutynowych mapowania

TCHAR.Rozpoczęto wykonywanie procedury h

_UNICODE & _MBCS nie zdefiniowany

_MBCS, definicja

_UNICODE, definicja

_vtprintf_s

vprintf_s

vprintf_s

vwprintf_s

_vtprintf_s_l

_vprintf_s_l

_vprintf_s_l

_vwprintf_s_l

Wymagania

Rozpoczęto wykonywanie procedury

Wymaganego nagłówka

Nagłówki opcjonalne

vprintf_s, _vprintf_s_l

<stdio.h> i <stdarg.h>

<varargs.h> *

vwprintf_s, _vwprintf_s_l

<stdio.h> lub <wchar.h> i <stdarg.h>

<varargs.h> *

* Wymagana w przypadku zgodności V systemu UNIX.

Konsola nie jest obsługiwana w Windows Store aplikacji.Związanych z konsolą, dojścia do strumienia standard stdin, stdout, i stderr, muszą być przeniesione, aby funkcje uruchomieniowej C mogą być użyte w Windows Store aplikacji.Aby uzyskać dodatkowe informacje o zgodności, zobacz zgodności we wprowadzeniu.

Odpowiednik w programie .NET Framework

System::Console::Write

Zobacz też

Informacje

Strumień we/wy

Funkcje vprintf

fprintf, _fprintf_l, fwprintf, _fwprintf_l

printf, _printf_l, wprintf, _wprintf_l

sprintf, _sprintf_l, swprintf, _swprintf_l, __swprintf_l

va_arg, va_end, va_start