_vcprintf_s, _vcprintf_s_l, _vcwprintf_s, _vcwprintf_s_l
Scrivere l'output formattato nella console utilizzando un puntatore a un elenco di argomenti.Queste sono versioni di _vcprintf, _vcprintf_l, _vcwprintf, _vcwprintf_l con i miglioramenti della sicurezza come descritto in Funzionalità di sicurezza in CRT.
Importante |
---|
Questa API non può essere utilizzata nelle applicazioni che vengono eseguite in Windows Runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /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
);
Parametri
format
Specifica di formato,argptr
Puntatore all'elenco di argomenti.locale
Le impostazioni locali da utilizzare.
Per ulteriori informazioni, vedere Specifiche di formato.
Valore restituito
Il numero di caratteri scritto, o un valore negativo se un errore di output viene visualizzato.
Come la versione non sicura di queste funzioni, se format è un puntatore null, il gestore non valido di parametro viene richiamato, come descritto in Convalida dei parametri.Inoltre, a differenza della versione non sicura di queste funzioni, se format non specifica un formato valido, viene generata un'eccezione non valida di parametro viene generata un'eccezione.Se l'esecuzione è consentita per continuare, ritorno di queste funzioni
Note
Ognuna di queste funzioni accetta un puntatore a un elenco di argomenti, quindi i formati e scrive i dati specificati nella console._vcwprintf_s è la versione a caratteri estesi di _vcprintf_s.Accetta una stringa di caratteri estesi come argomento.
Le versioni di queste funzioni con il suffisso _l sono identiche ad eccezione che utilizzano il parametro delle impostazioni locali passato in ingresso invece di utilizzare le impostazioni locali correnti.
Nota sulla sicurezza |
---|
Assicurarsi che format non sia una stringa definita dall'utente.Per ulteriori informazioni, vedere Evitare sovraccarichi del buffer. |
Mapping di routine a Testo generico
TCHAR.H routine |
_UNICODE & _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_vtcprintf_s |
_vcprintf_s |
_vcprintf_s |
_vcwprintf_s |
_vtcprintf_s_l |
_vcprintf_s_l |
_vcprintf_s_l |
_vcwprintf_s_l |
Requisiti
Routine |
Intestazione obbligatoria |
Intestazioni facoltative |
---|---|---|
_vcprintf_s, _vcprintf_s_l |
<conio.h> e <stdarg.h> |
<varargs.h>* |
_vcwprintf_s, _vcwprintf_s_l |
<conio.h> o <wchar.h>e <stdarg.h> |
<varargs.h>* |
* Necessario per la compatibilità con UNIX V.
Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'introduzione.
Esempio
// 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 );
}
Equivalente .NET Framework
Vedere anche
Riferimenti
_cprintf, _cprintf_l, _cwprintf, _cwprintf_l
fprintf, _fprintf_l, fwprintf, _fwprintf_l
printf, _printf_l, wprintf, _wprintf_l