Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
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 ); // See note in remarks section about linkage
char *_ctime32( const __time32_t *sourceTime );
char *_ctime64( const __time64_t *sourceTime );
wchar_t *_wctime( const time_t *sourceTime ); // See note in remarks section about linkage
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:
sourceTimerappresenta una data precedente alla mezzanotte dell'1 gennaio 1970 (ora UTC).Si usa
_ctime32o_wctime32esourceTimerappresenta una data successiva alle 23:59:59 del 18 gennaio 2038, UTC.Si usa
_ctime64o_wctime64esourceTimerappresenta 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.
Annotazioni
Quando si usa Windows SDK versione 10.0.26100.6901 e Visual Studio 2026 o versioni successive insieme e ctime_wctime non sono più static inline (collegamento interno). Sono invece inline (collegamento esterno).
Per tornare al comportamento precedente, #define _STATIC_INLINE_UCRT_FUNCTIONS=1 prima di includere eventuali intestazioni CRT. Per impostazione predefinita, il valore di _STATIC_INLINE_UCRT_FUNCTIONS è 0.
Questa modifica aumenta la conformità UCRT allo standard C++ e migliora la compatibilità con i moduli C++.
Mapping di routine di testo generico
TCHAR.H routine |
_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( <ime );
printf( "The time is %s\n", _ctime64( <ime ) ); // 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