ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64

Convertono un valore di tempo in una stringa e lo regolano per le impostazioni di fuso orario locale. Sono disponibili versioni più sicure di queste funzioni; vedere ctime_s, _ctime32_s, _ctime64_s_wctime_s, , _wctime32_s, . _wctime64_s

Sintassi

char *ctime( const time_t *sourceTime );
char *_ctime32( const __time32_t *sourceTime );
char *_ctime64( const __time64_t *sourceTime );
wchar_t *_wctime( const time_t *sourceTime );
wchar_t *_wctime32( const __time32_t *sourceTime );
wchar_t *_wctime64( const __time64_t *sourceTime );

Parametri

sourceTime
Puntatore al tempo archiviato per la conversione.

Valore restituito

Puntatore al risultato della stringa di caratteri. NULL viene restituito quando:

  • sourceTime rappresenta una data precedente alla mezzanotte dell'1 gennaio 1970 (ora UTC).

  • Si usa _ctime32 o _wctime32e sourceTime rappresenta una data successiva alle 23:59:59 del 18 gennaio 2038, UTC.

  • Si usa _ctime64 o _wctime64e sourceTime rappresenta una data successiva alle 23.59.59 del 31 dicembre 3000 UTC.

ctime è una funzione inline equivalente a _ctime64 e time_t è equivalente a __time64_t. Se è necessario forzare il compilatore in modo che interpreti time_t come il vecchio time_ta 32 bit, è possibile definire _USE_32BIT_TIME_T. Questa macro restituisce ctime_ctime32. Non è consigliabile usarlo perché l'applicazione potrebbe non riuscire dopo il 18 gennaio 2038 e non è consentita nelle piattaforme a 64 bit.

Osservazioni:

La ctime funzione converte un valore di ora archiviato come time_t valore in una stringa di caratteri. Il sourceTime valore viene in genere ottenuto da una chiamata a time, che restituisce il numero di secondi trascorsi dalla mezzanotte (00:00:00), 1 gennaio 1970, ora UTC (Coordinated Universal Time). La stringa del valore restituito contiene esattamente 26 caratteri e ha il formato:

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

Viene usato un formato 24 ore. Tutti i campi hanno una larghezza costante. Il carattere di nuova riga ('\n') e il carattere null ('\0') occupano le ultime due posizioni della stringa.

La stringa di caratteri convertita viene anche regolata in base alle impostazioni di fuso orario locale. Per informazioni sulla configurazione dell'ora locale, vedere le timefunzioni , _ftimee localtime . Per informazioni dettagliate sulla definizione dell'ambiente del fuso orario e delle variabili globali, vedere la _tzset funzione .

Una chiamata a ctime consente di modificare un singolo buffer allocato in modo statico usato dalle funzioni gmtime e localtime. Ogni chiamata a una di queste routine elimina definitivamente i risultati della chiamata precedente. ctime condivide un buffer statico con la funzione asctime. Pertanto, una chiamata a ctime elimina i risultati di qualsiasi chiamata precedente a asctime, localtime, o gmtime.

_wctime e _wctime64 sono la versione a caratteri wide di ctime e _ctime64; restituiscono un puntatore alla stringa di caratteri wide. In caso contrario, _ctime64, _wctime e _wctime64 si comportano in modo identico a ctime.

Queste funzioni convalidano i relativi parametri. Se sourceTime è un puntatore Null o se il sourceTime valore è negativo, queste funzioni richiamano il gestore di parametri non validi, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, le funzioni restituiscono NULL e impostano errno su EINVAL.

Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.

Mapping di routine di testo generico

Routine TCHAR.H _UNICODE e _MBCS non definito _MBCS Definito _UNICODE Definito
_tctime ctime ctime _wctime
_tctime32 _ctime32 _ctime32 _wctime32
_tctime64 _ctime64 _ctime64 _wctime64

Requisiti

Ciclo Intestazione obbligatoria
ctime <time.h>
_ctime32 <time.h>
_ctime64 <time.h>
_wctime <time.h> o <wchar.h>
_wctime32 <time.h> o <wchar.h>
_wctime64 <time.h> o <wchar.h>

Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).

Esempio

// crt_ctime64.c
// compile with: /W3
/* This program gets the current
* time in _time64_t form, then uses ctime to
* display the time in string form.
*/

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

int main( void )
{
   __time64_t ltime;

   _time64( &ltime );
   printf( "The time is %s\n", _ctime64( &ltime ) ); // C4996
   // Note: _ctime64 is deprecated; consider using _ctime64_s
}
The time is Wed Feb 13 16:04:43 2002

Vedi anche

Gestione orari
asctime, _wasctime
ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s
_ftime, _ftime32, _ftime64
gmtime, _gmtime32, _gmtime64
localtime, _localtime32, _localtime64
time, _time32, _time64