_strdate_s, _wstrdate_s
Copiare la data di sistema corrente di un buffer.queste sono versioni di _strdate, _wstrdate con i miglioramenti della sicurezza come descritto in Funzionalità di sicurezza in CRT.
errno_t _strdate_s(
char *buffer,
size_t numberOfElements
);
errno_t _wstrdate_s(
wchar_t *buffer,
size_t numberOfElements
);
template <size_t size>
errno_t _strdate_s(
char (&buffer)[size]
); // C++ only
template <size_t size>
errno_t _wstrdate_s(
wchar_t (&buffer)[size]
); // C++ only
Parametri
[out] buffer
Un puntatore a un buffer che verrà fornito di stringa della data formattata.[in] numberOfElements
Dimensione del buffer.
Valore restituito
Zero se ha esito positivo.Il valore restituito è un codice di errore se c " è un errore.I codici di errore definiti in ERRNO.H; vedere la tabella riportata di seguito per gli errori esatti generati dalla funzione.Per ulteriori informazioni sui codici di errore, vedere errno.
condizioni di errore
buffer |
numberOfElements |
Return |
Contenuto di buffer |
---|---|---|---|
NULL |
(nessuno) |
EINVAL |
non modificato |
non NULL (punta al buffer valido) |
0 |
EINVAL |
non modificato |
non NULL (punta al buffer valido) |
0 < numberOfElements < 9 |
EINVAL |
Stringa vuota. |
non NULL (punta al buffer valido) |
numberOfElements >= 9 |
0 |
Data corrente formattata come specificato nei commenti |
problemi di sicurezza
Passando un oggetto non valido non NULL il valore del buffer comporterà una violazione di accesso se numberOfElements il parametro è maggiore di 9.
Passando i valori di dimensione maggiore della dimensione effettiva del buffer restituisce il sovraccarico del buffer.
Note
Queste funzioni forniscono versioni sicure di _strdate e _wstrdate._strdate_s la funzione copia la data di sistema corrente nel buffer puntato in near buffer, formattato mmoddoyy, dove mm sono due cifre che rappresentano il mese, dd sono due cifre che rappresentano il giorno e yy è le ultime due cifre anno.Ad esempio, la stringa 12/05/99 rappresenta il 5 dicembre 1999.Il buffer deve essere almeno 9 caratteri.
_wstrdate_s è una versione a caratteri estesi di _strdate_s; l'argomento e il valore restituito di _wstrdate_s sono le stringhe di caratteri estesi.Queste funzioni si comportano in modo identico in caso contrario.
se buffer è un oggetto NULL puntatore, o se numberOfElements è minore di 9 caratteri, il gestore non valido di parametro viene richiamato, come descritto in Convalida dei parametri.Se l'esecuzione è consentita per continuare, queste funzioni restituiscono -1 e impostate errno in EINVAL se il buffer è NULL oppure numberOfElements è minore o uguale a 0, o il set errno in ERANGE se numberOfElements sono meno di 9.
In C++, utilizzando queste funzioni è semplificato dagli overload del modello; gli overload possono dedurre la lunghezza del buffer automaticamente (che elimina la necessità di specificare un argomento di dimensione) e possono sostituire automaticamente le funzioni precedenti e non sicure con le più recenti, controparti sicure.Per ulteriori informazioni, vedere Assicurarsi che gli overload del modello.
Mapping di routine a testo generico:
routine di TCHAR.H |
_UNICODE & _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tstrdate_s |
_strdate_s |
_strdate_s |
_wstrdate_s |
Requisiti
routine |
Intestazione di associazione |
---|---|
_strdate |
<time.h> |
_wstrdate |
<time.h> o <wchar.h> |
_strdate_s |
<time.h> |
Esempio
Vedere l'esempio relativo a tempo.
Equivalente .NET Framework
System:: DateTime:: Di traccia
Vedere anche
Riferimenti
ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s
gmtime_s, _gmtime32_s, _gmtime64_s