Sdílet prostřednictvím


_vcprintf_s, _vcprintf_s_l, _vcwprintf_s, _vcwprintf_s_l

Zápis formátovaný výstup do konzoly pomocí ukazatel na seznam argumentů.Jedná se o verze _vcprintf, _vcprintf_l, _vcwprintf, _vcwprintf_l s vylepšení zabezpečení, jak je popsáno v Funkce zabezpečení v CRT.

Důležitá poznámkaDůležité

Toto rozhraní API nelze použít v aplikacích, které jsou spuštěny v systému Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /ZW.

int _vcprintf(
   const char* format,
   va_list argptr
);
int _vcprintf(
   const char* format,
   locale_t locale,
   va_list argptr
);
int _vcwprintf_s(
   const wchar_t* format,
   va_list argptr
);
int _vcwprintf_s_l(
   const wchar_t* format,
   locale_t locale,
   va_list argptr
);

Parametry

  • format
    Specifikace formátu.

  • argptr
    Ukazatel na seznam argumentů.

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

Další informace naleznete v tématu Specifikace formátu.

Vrácená hodnota

Počet znaků, které jsou zapsány nebo zápornou hodnotu, pokud dojde k chybě výstup.

Podobně jako nezabezpečenou verzí těchto funkcí, pokud format je ukazatel s hodnotou null, je vyvolána obslužná rutina neplatný parametr, jak je popsáno v Ověření parametrů.Navíc na rozdíl od nezabezpečenou verzí těchto funkcí Pokud format neurčuje platný formát, je generována výjimka neplatného parametru.Pokud je povoleno zpracování, chcete-li pokračovat, tyto funkce vracejí

Poznámky

Každá z těchto funkcí bere ukazatel na seznam argumentů, pak formáty a poskytnutá data do konzoly._vcwprintf_sje verzí širokého znaku _vcprintf_s.Jako argument trvá řetězce širokého znaku.

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í.

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

Zajistit, aby format není uživatelem definovaný řetězec.Další informace naleznete v tématu Zamezení způsobí přetečení vyrovnávací paměti.

Mapování rutiny obecného textu

TCHAR.Byla zahájena rutina h

_UNICODE & _MBCS není definováno

_MBCS, definice

_UNICODE definována

_vtcprintf_s

_vcprintf_s

_vcprintf_s

_vcwprintf_s

_vtcprintf_s_l

_vcprintf_s_l

_vcprintf_s_l

_vcwprintf_s_l

Požadavky

Byla zahájena rutina

Požadované záhlaví

Volitelné záhlaví

_vcprintf_s, _vcprintf_s_l

<conio.h> a <stdarg.h>

<varargs.h> *

_vcwprintf_s, _vcwprintf_s_l

<conio.h> nebo <wchar.h> a <stdarg.h>

<varargs.h> *

* Vyžadována z důvodu kompatibility V systému UNIX.

Další informace o kompatibilitě, viz Compatibility v úvodu.

Příklad

// crt_vcprintf_s.cpp
#include <conio.h>
#include <stdarg.h>

// An error formatting function used to print to the console.
int eprintf_s(const char* format, ...)
{
  va_list args;
  va_start(args, format);
  return _vcprintf_s(format, args);
}

int main()
{
   eprintf_s("  (%d:%d): Error %s%d : %s\n", 10, 23, "C", 2111,
           "<some error text>");
   eprintf_s("  (Related to symbol '%s' defined on line %d).\n",
           "<symbol>", 5 );
}
  

Ekvivalent v rozhraní .NET Framework

System::Console::Write

Viz také

Referenční dokumentace

Proud I/O

Funkce vprintf

_cprintf, _cprintf_l, _cwprintf, _cwprintf_l

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