Partager via


_ftime, , _ftime32_ftime64

Obtenir l’heure actuelle. Des versions plus sécurisées de ces fonctions sont disponibles. Consultez _ftime_s, _ftime32_s, _ftime64_s.

Syntaxe

void _ftime( struct _timeb *timeptr );
void _ftime32( struct __timeb32 *timeptr );
void _ftime64( struct __timeb64 *timeptr );

Paramètres

timeptr
Pointeur vers une structure ou un _timebpointeur__timeb32__timeb64.

Notes

La _ftime fonction obtient l’heure locale actuelle et la stocke dans la structure pointée par timeptr. Les _timebstructures __timeb32et __timeb64 les structures sont définies dans <sys\timeb.h>. Elles contiennent quatre champs, qui sont présentés dans le tableau suivant.

Champ Description
dstflag Valeur non nulle si l’heure d’été est en vigueur pour le fuseau horaire local. (Consultez _tzset une explication de la détermination du temps d’été.)
millitm Fraction de seconde en millisecondes.
time Durée en secondes depuis le 1er janvier 1970, minuit (00:00:00), temps universel (UTC).
timezone Différence en minutes, en direction de l’ouest, entre les heures UTC et locale. La valeur de timezone est définie à partir de la valeur de la variable globale _timezone (voir _tzset).

La _ftime64 fonction, qui utilise la structure, autorise la __timeb64 création de fichiers à exprimer jusqu’à 23:59:59:59, 31 décembre 3000, UTC ; alors que _ftime32 seule représente les dates jusqu’à 23:59:59:59 janvier 18, 2038, UTC. Le 1er janvier 1970 à minuit est la limite inférieure de la plage de dates pour toutes ces fonctions.

La _ftime fonction est équivalente à _ftime64, et _timeb contient une heure 64 bits, sauf si _USE_32BIT_TIME_T elle est définie, auquel cas l’ancien comportement est en vigueur ; _ftime utilise une heure 32 bits et _timeb contient une heure 32 bits.

_ftime valide ses paramètres. Si un pointeur Null est passé en tant que timeptr, la fonction appelle le gestionnaire de paramètres non valide, comme décrit dans la validation de paramètre. Si l’exécution est autorisée à se poursuivre, la fonction définit errno sur EINVAL.

Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.

Spécifications

Fonction En-tête requis
_ftime <sys/types.h> et <sys/timeb.h>
_ftime32 <sys/types.h> et <sys/timeb.h>
_ftime64 <sys/types.h> et <sys/timeb.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

Exemple

// crt_ftime.c
// compile with: /W3
// This program uses _ftime 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;

   _ftime( &timebuffer ); // C4996
   // Note: _ftime is deprecated; consider using _ftime_s instead

   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

Voir aussi

Gestion des horaires
asctime, _wasctime
ctime, , _ctime32, _wctime_ctime64, , _wctime32_wctime64
gmtime, , _gmtime32_gmtime64
localtime, , _localtime32_localtime64
time, , _time32_time64