Condividi tramite


_ftime_s, _ftime32_s, _ftime64_s

Ottiene l'ora corrente. Queste funzioni sono versioni di , , _ftime64con miglioramenti della_ftime sicurezza, come descritto in Funzionalità di sicurezza in CRT. _ftime32

Sintassi

errno_t _ftime_s( struct _timeb *timeptr );
errno_t _ftime32_s( struct __timeb32 *timeptr );
errno_t _ftime64_s( struct __timeb64 *timeptr );

Parametri

timeptr
Puntatore a una _timebstruttura , __timeb32o __timeb64 .

Valore restituito

Zero in caso di esito positivo, un codice di errore in caso di esito negativo. Se timeptr è NULL, il valore restituito è EINVAL.

Osservazioni:

La _ftime_s funzione ottiene l'ora locale corrente e la archivia nella struttura a timeptrcui punta . Le _timebstrutture , __timeb32e __timeb64 sono definite in SYS\Timeb.h. Le strutture contengono quattro valori, elencati nella tabella seguente.

Campo Descrizione
dstflag Diverso da zero se l'ora legale è in vigore per il fuso orario locale. Per _tzset una spiegazione del modo in cui viene determinata l'ora legale, vedere .
millitm Frazione di secondo in millisecondi.
time Ora in secondi trascorsi dalla mezzanotte (00.00.00) del 1 gennaio 1970 nel formato UTC (Coordinated Universal Time).
timezone La differenza in minuti, in direzione ovest, tra l'ora UTC e l'ora locale. Il valore di timezone viene impostato dal valore della variabile globale _timezone (vedere _tzset).

La _ftime64_s funzione , che usa la __timeb64 struttura , consente di esprimere le date di creazione di file fino alle 23.59.59 del 31 dicembre 3000 UTC, mentre _ftime32_s rappresenta solo le date fino alle 23.59.59 del 18 gennaio 2038, UTC. La mezzanotte del 1 gennaio 1970 è il limite inferiore dell'intervallo di date per tutte queste funzioni.

La _ftime_s funzione è equivalente a e _timeb contiene un tempo a _ftime64_s64 bit, a meno che non _USE_32BIT_TIME_T sia definito, nel qual caso il comportamento precedente è attivo; _ftime_s usa un'ora a 32 bit e _timeb contiene un tempo a 32 bit.

_ftime_s convalida i propri parametri. Se è stato passato un puntatore Null come timeptr, la funzione richiama il gestore di parametri non validi, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, la funzione imposta errno su EINVAL.

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

Requisiti

Funzione Intestazione obbligatoria
_ftime_s <sys/types.h> e <sys/timeb.h>
_ftime32_s <sys/types.h> e <sys/timeb.h>
_ftime64_s <sys/types.h> e <sys/timeb.h>

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

Librerie

Tutte le versioni delle librerie di runtime C.

Esempio

// crt_ftime64_s.c
// This program uses _ftime64_s to obtain the current
// time and then stores this time in timebuffer.

#include <stdio.h>
#include <sys/timeb.h>
#include <time.h>

int main( void )
{
   struct _timeb timebuffer;
   char timeline[26];
   errno_t err;
   time_t time1;
   unsigned short millitm1;
   short timezone1;
   short dstflag1;

   _ftime64_s( &timebuffer );

    time1 = timebuffer.time;
    millitm1 = timebuffer.millitm;
    timezone1 = timebuffer.timezone;
    dstflag1 = timebuffer.dstflag;

   printf( "Seconds since midnight, January 1, 1970 (UTC): %I64d\n",
   time1);
   printf( "Milliseconds: %d\n", millitm1);
   printf( "Minutes between UTC and local time: %d\n", timezone1);
   printf( "Daylight savings time flag (1 means Daylight time is in "
           "effect): %d\n", dstflag1);

   err = ctime_s( timeline, 26, & ( timebuffer.time ) );
   if (err)
   {
       printf("Invalid argument to ctime_s. ");
   }
   printf( "The time is %.19s.%hu %s", timeline, timebuffer.millitm,
           &timeline[20] );
}
Seconds since midnight, January 1, 1970 (UTC): 1051553334
Milliseconds: 230
Minutes between UTC and local time: 480
Daylight savings time flag (1 means Daylight time is in effect): 1
The time is Mon Apr 28 11:08:54.230 2003

Vedi anche

Gestione orari
asctime, _wasctime
ctime, _ctime32, _ctime64, _wctime, _wctime32_wctime64
gmtime, _gmtime32, _gmtime64
localtime, _localtime32, _localtime64
time, _time32, _time64