Udostępnij za pośrednictwem


vprintf, _vprintf_l, vwprintf, _vwprintf_l

Pisze sformatowane dane wyjściowe za pomocą wskaźnika do listy argumentów.Bardziej bezpieczne wersje tych funkcji są dostępne w vprintf_s, _vprintf_s_l, vwprintf_s, _vwprintf_s_l.

int vprintf(
   const char *format,
   va_list argptr 
);
int _vprintf_l(
   const char *format,
   locale_t locale,
   va_list argptr 
);
int vwprintf(
   const wchar_t *format,
   va_list argptr 
);
int _vwprintf_l(
   const wchar_t *format,
   locale_t locale,
   va_list argptr 
);

Parametry

  • format
    Format specyfikacji.

  • argptr
    Wskaźnik na listę argumentów.

  • locale
    Ustawienia regionalne do użycia.

Aby uzyskać więcej informacji na temat ciągów formatujących, zobacz Specyfikacje formatu.

Wartość zwracana

vprintf i vwprintf zwraca liczbę znaków napisanych, 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 wskaźnikiem typu null lub ciąg formatu zawiera nieprawidłowe znaki formatowania, zostanie wywołana procedura obsługi nieprawidłowego parametru, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może być kontynuowane, te funkcje zwracają -1 i ustawiają errno jako EINVAL.

Aby uzyskać informacje na temat tych i innych kodów błędu, zobacz _doserrno, errno, _sys_errlist, and _sys_nerr.

Uwagi

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

vwprintf jest wersją znaków dwubajtowych vprintf; dwie funkcje zachowują się identycznie, jeśli strumień jest otwarty w trybie ANSI.vprintf aktualnie nie obsługuje danych wyjściowych w strumieniu UNICODE.

Wersje tych funkcji z przyrostkiem _l są identyczne z wyjątkiem stosowania regionalnych parametrów zamiast bieżącego ciągu.

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

Zapewnienia, że format nie jest ciągiem zdefiniowanym przez użytkownika.Aby uzyskać więcej informacji, zobacz unikanie przekroczenia buforu.Należy zauważyć, że nieprawidłowe formaty ciągów są wykrywane i powodują wystąpienie błędu.

Rutynowe mapowania zwykłego tekstu

Procedura Tchar.h

_UNICODE & _MBCS nie zdefiniowano

_MBCS zdefiniowano

_UNICODE zdefiniowany

_vtprintf

vprintf

vprintf

vwprintf

_vtprintf_l

_vprintf_l

_vprintf_l

_vwprintf_l

Wymagania

Procedura

Wymagany nagłówek

Opcjonalne nagłówki

vprintf, _vprintf_l

<stdio.h> i <stdarg.h>

<varargs.h>*

vwprintf, _vwprintf_l

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

<varargs.h>*

* Wymagane dla zgodności systemu UNIX V.

Konsola nie jest obsługiwana w aplikacjach Windows Store.Standardowe uchwyty strumienia powiązane z konsolą—stdin, stdout, i stderr—muszą zostać przekierowane zanim będą wykorzystane przez funkcje środowiska uruchomieniowego C w aplikacjach Windows Store.Dodatkowe informacje o zgodności – zobacz: Zgodność.

Odpowiednik w programie .NET Framework

System::Console::Write

Zobacz też

Informacje

We/Wy strumienia

vprintf — Funkcje

fprintf, _fprintf_l, fwprintf, _fwprintf_l

printf, _printf_l, wprintf, _wprintf_l

sprintf, _sprintf_l, swprintf, _swprintf_l, __swprintf_l

va_arg, va_copy, va_end, va_start