ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s

Convertire un valore in una stringa e registrare per ottenere le impostazioni del fuso orario locale.queste sono versioni di ctime, _ctime64, _wctime, _wctime64 con i miglioramenti della sicurezza come descritto in Funzionalità di sicurezza in CRT.

errno_t ctime_s( 
   char* buffer,
   size_t numberOfElements,
   const time_t *time 
);
errno_t _ctime32_s( 
   char* buffer,
   size_t numberOfElements,
   const __time32_t *time 
);
errno_t _ctime64_s( 
   char* buffer,
   size_t numberOfElements,
   const __time64_t *time )
;
errno_t _wctime_s( 
   wchar_t* buffer,
   size_t numberOfElements,
   const time_t *time 
);
errno_t _wctime32_s( 
   wchar_t* buffer,
   size_t numberOfElements,
   const __time32_t *time 
);
errno_t _wctime64_s( 
   wchar_t* buffer,
   size_t numberOfElements,
   const __time64_t *time 
);
template <size_t size>
errno_t _ctime32_s( 
   char (&buffer)[size],
   const __time32_t *time 
); // C++ only
template <size_t size>
errno_t _ctime64_s( 
   char (&buffer)[size],
   const __time64_t *time
); // C++ only
template <size_t size>
errno_t _wctime32_s( 
   wchar_t (&buffer)[size],
   const __time32_t *time 
); // C++ only
template <size_t size>
errno_t _wctime64_s( 
   wchar_t (&buffer)[size],
   const __time64_t *time 
); // C++ only

Parametri

  • [out] buffer
    Deve essere sufficientemente grande utilizzare 26 caratteri.Un puntatore al risultato della stringa di caratteri, o NULLse:

    • time rappresenta una data prima di mezzanotte, il 1° gennaio 1970, UTC.

    • Se si utilizzano _ctime32_s o _wctime32_s e time rappresenta una data dopo il 03:14: 7 gennaio 19, 2038.

    • Se si utilizzano _ctime64_s o _wctime64_s e time rappresenta una data dopo il 23:59: 59, il 31 dicembre, 3000, UTC.

    • Se si utilizzano _ctime_s o _wctime_s, queste funzioni sono wrapper alle funzioni precedenti.Vedere la sezione Osservazioni.

  • [in] numberOfElements
    Dimensione del buffer.

  • [in] time
    puntatore a tempo archiviato.

Valore restituito

Zero se ha esito positivo.Se c " è un errore a causa di un parametro non valido, il gestore non valido di parametro viene richiamato, come descritto in Convalida dei parametri.Se l'esecuzione è consentita per continuare, un codice di errore viene restituito.I codici di errore definiti in ERRNO.H; per un elenco di questi errori, vedere errno.I codici di errore generati per ogni condizione di errore vengono mostrati nella tabella seguente.

condizioni di errore

buffer

numberOfElements

time

Return

Valore in buffer

NULL

qualsiasi

qualsiasi

EINVAL

non modificato

non NULL (punta alla memoria valida)

0

qualsiasi

EINVAL

non modificato

non NULL

0< dimensione < 26

qualsiasi

EINVAL

Stringa vuota.

non NULL

>= 26

NULL

EINVAL

Stringa vuota.

non NULL

>= 26

< 0

EINVAL

Stringa vuota.

Note

ctime_s la funzione consente di convertire un valore archiviato come time_t struttura in una stringa di caratteri.time il valore è in genere ottenuto da una chiamata a tempo, che restituisce il numero di secondi trascorsi dalla mezzanotte (00:00: 00), il 1° gennaio 1970, formato UTC (UTC).La stringa del valore restituito contiene esattamente 26 caratteri e del form:

Wed Jan 02 02:03:55 1980\n\0

Un orario in formato 24 ore viene utilizzato.Tutti i campi dispongono di una larghezza costante.Il carattere di nuova riga (" \ n ") e un carattere null (" \ 0 ") occupano le ultime due posizioni della stringa.

La stringa di caratteri convertita viene modificata in base alle impostazioni del fuso orario locale.vedere time, _ftimee localtime32_s funzioni per informazioni sulla configurazione dell'ora locale e _tzset eseguire per informazioni sulla definizione dell'ambiente e variabili globali del fuso orario.

_wctime32_s e _wctime64_s è la versione a caratteri estesi di _ctime32_s e _ctime64_s; restituire un puntatore a una stringa di caratteri estesi.In caso contrario, _ctime64_s, _wctime32_se _wctime64_s comportano in modo identico a _ctime32_s.

ctime_s è una funzione inline che restituisce _ctime64_s e time_t equivale a __time64_t.Se è necessario che il compilatore per interpretare time_t come il 32 bit obsoleto time_t, è possibile definire _USE_32BIT_TIME_T.Questa operazione provocherà ctime_s per valutare a _ctime32_s.Questa operazione non è consigliabile perché l'applicazione può non riuscire dopo il 18 gennaio 2038 e non è consentita sulle piattaforme a 64 bit.

In C++, utilizzando queste funzioni è semplificato dagli overload del modello; gli overload possono dedurre la lunghezza del buffer automaticamente, eliminando la necessità di specificare un argomento di dimensione.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

_tctime_s

ctime_s

ctime_s

_wctime_s

_tctime32_s

_ctime32_s

_ctime32_s

_wctime32_s

_tctime64_s

_ctime64_s

_ctime64_s

_wctime64_s

Requisiti

routine

Intestazione di associazione

ctime_s,

_ctime32_s,

_ctime64_s

<time.h>

_wctime_s,

_wctime32_s,

_wctime64_s

<time.h> o <wchar.h>

per informazioni di compatibilità aggiuntive, vedere compatibilità nell'introduzione.

Librerie

Tutte le versioni di Librerie di runtime del linguaggio C.

Esempio

// crt_wctime_s.c
/* This program gets the current
 * time in time_t form and then uses _wctime_s to
 * display the time in string form.
 */

#include <time.h>
#include <stdio.h>

#define SIZE 26

int main( void )
{
   time_t ltime;
   wchar_t buf[SIZE];
   errno_t err;

   time( &ltime );

  
   err = _wctime_s( buf, SIZE, &ltime );
   if (err != 0)
   {
      printf("Invalid Arguments for _wctime_s. Error Code: %d\n", err);
   }
   wprintf_s( L"The time is %s\n", buf );
}

Esempio di output

The time is Fri Apr 25 13:03:39 2003

Equivalente .NET Framework

Vedere anche

Riferimenti

Gestione di tempo

asctime_s, _wasctime_s

ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64

_ftime, _ftime32, _ftime64

gmtime_s, _gmtime32_s, _gmtime64_s

localtime_s, _localtime32_s, _localtime64_s

time, _time32, _time64