ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64
Converte un valore di ora in una stringa e lo regola in base alle 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.
char *ctime(
const time_t *timer
);
char *_ctime32(
const __time32_t *timer )
;
char *_ctime64(
const __time64_t *timer )
;
wchar_t *_wctime(
const time_t *timer
);
wchar_t *_wctime32(
const __time32_t *timer
);
wchar_t *_wctime64(
const __time64_t *timer
);
Parametri
- timer
Puntatore all'ora archiviata.
Valore restituito
Un puntatore alla stringa di caratteri risultato. NULL viene restituito se:
time rappresenta una data precedente alla mezzanotte del 1° gennaio 1970, UTC.
Se si utilizza _ctime32 o _wctime32 e time rappresenta una data successiva al 19 gennaio 2038, alle ore 03:14:07.
Se si utilizza _ctime64 o _wctime64 e time rappresenta una data successiva al 31 dicembre 3000 alle ore 23:59:59, UTC.
ctime è una funzione inline che valuta _ctime64 e time_t equivale a __time64_t. Se è necessario forzare il compilatore ad interpretare time_t come l'obsoleto time_t a 32 bit, è possibile definire _USE_32BIT_TIME_T. In questo modo ctime valuterà _ctime32. Questa operazione non è consigliabile perché l'applicazione fallirebbe dopo il 18 gennaio 2038, e ciò non è consentito su piattaforme a 64 bit.
Note
La funzione ctime converte un valore di ora archiviato tramite un valore time_t in una stringa di caratteri. Il valore timer in genere viene ottenuto da una chiamata a time, che restituisce il numero di secondi trascorsi dalla mezzanotte (00:00:00) del 1° gennaio 1970, formato UTC (coordinated universal time). La stringa del valore restituito contiene esattamente 26 caratteri e ha forma:
Wed Jan 02 02:03:55 1980\n\0
Viene utilizzato un orario nel formato a 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.
Una stringa di caratteri convertita viene regolata in base alle impostazioni del fuso orario locali. Vedere le funzioni time, _ftime, e localtime per informazioni su come configurare l'ora locale, e la funzione _tzset per dettagli su come definire l'ambiente di fuso orario e delle variabili globali.
Una chiamata a ctime modifica i singoli buffer allocati in modo statico utilizzati dalle funzioni localtime e gmtime. Ogni chiamata a una di queste routine distrugge il risultato 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 versioni a caratteri wide di ctime e _ctime64; restituiscono un puntatore a una stringa a caratteri wide. In caso contrario, _ctime64, _wctime e _wctime64 si comportano in modo identico a ctime.
Queste funzioni convalidano i parametri. Se timer è un puntatore null, oppure se il valore temporale è negativo, queste funzioni richiamano il gestore di parametro non valido, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, la funzione restituisce NULL e imposta errno su EINVAL.
Mapping di routine di testo generico
Routine TCHAR.H |
_UNICODE & _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tctime |
ctime |
ctime |
_wctime |
_tctime32 |
_ctime32 |
_ctime32 |
_wctime32 |
_tctime64 |
_ctime64 |
_ctime64 |
_wctime64 |
Requisiti
Routine |
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 ulteriori informazioni sulla compatibilità, vedere Compatibilità nell'Introduzione.
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( <ime );
printf( "The time is %s\n", _ctime64( <ime ) ); // C4996
// Note: _ctime64 is deprecated; consider using _ctime64_s
}
Equivalente .NET Framework
Vedere anche
Riferimenti
ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s