_ftime_s, _ftime32_s, _ftime64_s
obtiene la hora actual.Éstas son versiones de _ftime, _ftime32, _ftime64 con mejoras de seguridad como se describe en Características de seguridad en CRT.
errno_t _ftime_s(
struct _timeb *timeptr
);
errno_t _ftime32_s(
struct __timeb32 *timeptr
);
errno_t _ftime64_s(
struct __timeb64 *timeptr
);
Parámetros
- timeptr
Puntero a _timeb,__timeb32, o la estructura de __timeb64 .
Valor devuelto
Cero si es correcto, un código de error del error.Si timeptr es NULL, el valor devuelto es EINVAL.
Comentarios
La función de _ftime_s obtiene la hora local y la almacena en la estructura designada por a timeptr*.*_timeb,__timeb32,ylas estructuras de__timeb64 son definidas en SYS \Timeb .h.contienen cuatro campos, que se enumeran en la tabla siguiente.
dstflag
Distinto de cero si el horario de verano está actualmente en vigor para la zona horaria local.(Vea _tzset para obtener una explicación de cómo se determina el horario de verano.)millitm
fracción segundo en milisegundos.time
tiempo en segundos desde la medianoche (00:00: 00), el 1 de enero de 1970, hora universal coordinada (UTC) (UTC).timezone
Diferencia en minutos, desplazándose hacia el oeste, entre la hora utc y la hora local.El valor de timezone se establece el valor de la variable global _timezone (vea _tzset).
_ftime64_s, que utiliza la estructura de __timeb64 , permite que las fechas de creación de archivos se expresadas hacia arriba con 23:59: 59, el 31 de diciembre, 3000, hora UTC; mientras que _ftime32_s sólo representa las fechas con 03:14: 7 de enero de 19, 2038, La hora UTC.La medianoche, el 1 de enero de 1970, es el límite inferior del intervalo de fechas para todas estas funciones.
_ftime_s es equivalente a _ftime64_s y _timeb contiene una hora 64 bits.Esto es así a menos que _USE_32BIT_TIME_T está definido, en cuyo caso el comportamiento antiguo está vigente; _ftime_s utiliza un período de 32 bits y _timeb contiene un plazo de 32 bits.
_ftime_s valida sus parámetros.Si se pasa un puntero NULL como timeptr, la función invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros.Si la ejecución puede continuar, la función establece errno a EINVAL.
Requisitos
Función |
Encabezado necesario |
---|---|
_ftime_s |
<sistema/types.h> y <sistema/timeb.h> |
_ftime32_s |
<sistema/types.h> y <sistema/timeb.h> |
_ftime64_s |
<sistema/types.h> y <sistema/timeb.h> |
Para obtener más información de compatibilidad, vea compatibilidad en la Introducción.
bibliotecas
todas las versiones de Bibliotecas en tiempo de ejecución de C.
Ejemplo
// 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] );
}
Equivalente en .NET Framework
Vea también
Referencia
ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64