_cprintf_s, _cprintf_s_l, _cwprintf_s, _cwprintf_s_l
Formatta e stampa nella console.Queste sono versioni di _cprintf, _cprintf_l, _cwprintf, _cwprintf_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 _cprintf_s(
const char * format [,
argument] ...
);
int _cprintf_s_l(
const char * format,
locale_t locale [,
argument] ...
);
int _cwprintf_s(
const wchar * format [,
argument] ...
);
int _cwprintf_s_l(
const wchar * format,
locale_t locale [,
argument] ...
);
Parametri
format
Stringa di formato e di controllo.argument
Parametri facoltativi.locale
Le impostazioni locali da utilizzare.
Valore restituito
Il numero di caratteri stampato.
Note
Queste funzioni consentono di formattare e di stampa una stringa di caratteri e i valori direttamente nella console, utilizzando la funzione di _putch (_putwch per _cwprintf_s) per restituire i caratteri.Ogni argument (se presenti) viene convertito e restituito alla specifica di formato corrispondente in format.Il formato con lo stesso form e del parametro di format per la funzione di printf_s.A differenza di fprintf_s, di printf_se le funzioni di sprintf_s, né né _cprintf_s_cwprintf_s converte i caratteri di avanzamento riga in miscugli di un feed di ritorno- riga del carrello (CR-LF) quando output.
Una differenza importante è che _cwprintf_s visualizzare i caratteri unicode se utilizzato in Windows NT.A differenza di _cprintf_s, _cwprintf_s utilizza le impostazioni locali correnti della console
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. |
Come le versioni non sicure (vedere _cprintf, _cprintf_l, _cwprintf, _cwprintf_l), queste funzioni convalidano i relativi parametri e richiamare il gestore non valido di parametro, come descritto in Convalida dei parametri, se format è un puntatore null.Queste funzioni differiscono dalle versioni non sicure nel fatto che la stringa stessa viene convalidata.Se c'è nessuna sconosciuto o corretto e formattando gli identificatori, queste funzioni richiamare il gestore non valido di parametro.In tutti i casi, se l'esecuzione può continuare, la funzione restituisce -1 e imposta errno a EINVAL.
Mapping di routine a Testo generico
Routine Tchar.h |
_UNICODE e _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tcprintf_s |
_cprintf_s |
_cprintf_s |
_cwprintf_s |
_tcprintf_s_l |
_cprintf_s_l |
_cprintf_s_l |
_cwprintf_s_l |
Requisiti
Routine |
Intestazione obbligatoria |
---|---|
_cprintf_s,_cprintf_s_l |
<conio.h> |
_cwprintf_s, _cwprintf_s_l |
<conio.h> |
Per ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'introduzione.
Librerie
Tutte le versioni delle Librerie di runtime C.
Esempio
// crt_cprintf_s.c
// compile with: /c
// This program displays some variables to the console.
#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_s( "%d %.4x %u %c %s\r\n", i, h, u, c, s );
}
Output
-16 001d 62511 A Test
Vedere anche
Riferimenti
_cscanf, _cscanf_l, _cwscanf, _cwscanf_l
fprintf_s, _fprintf_s_l, fwprintf_s, _fwprintf_s_l
printf_s, _printf_s_l, wprintf_s, _wprintf_s_l
sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l
vfprintf_s, _vfprintf_s_l, vfwprintf_s, _vfwprintf_s_l
Sintassi per la specifica del formato: funzioni printf wprintf