Compartilhar via


_ftime_s, _ftime32_s, _ftime64_s

Obtém a hora atual.Estas são as versões do _ftime, _ftime32, _ftime64 com aprimoramentos de segurança, conforme descrito em Recursos de segurança no 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
    Pointer to a _timeb,__timeb32, or __timeb64 structure.

Valor de retorno

Zero se for bem-sucedido, um código de erro em caso de falha.If timeptr is NULL, the return value is EINVAL.

Comentários

O _ftime_s função obtém a hora local atual e a armazena na estrutura apontada por timeptr*.* The _timeb,__timeb32,and__timeb64 structures are defined in SYS\Timeb.h.Eles contêm quatro campos, que são listados na tabela a seguir.

  • dstflag
    Diferente de zero se o horário de verão está atualmente em vigor para o fuso horário local.(Consulte _tzset para obter uma explicação de como o horário de verão é determinado.)

  • millitm
    Fração de segundo em milissegundos.

  • time
    Tempo em segundos desde a meia-noite (00: 00), 1 de janeiro de 1970, hora universal coordenada (UTC).

  • timezone
    Diferença em minutos, westward, movendo entre o UTC e a hora local.O valor de timezone é definida a partir do valor da variável global _timezone (consulte _tzset).

_ftime64_s, que usa a __timeb64 estruturar, permite que as datas de criação do arquivo a ser expressa até por meio de 23: 59: 59, 31 de dezembro de 3000, UTC; enquanto _ftime32_s representa apenas as datas até 03: 14: 07 em 19 de janeiro de 2038, UTC.Meia-noite, de 1º de janeiro de 1970, é o limite inferior do intervalo de datas para todas essas funções.

_ftime_sé equivalente a _ftime64_s e _timeb contém a hora de 64 bits.Isso é verdadeiro, a menos que _USE_32BIT_TIME_T for definida, caso em que o comportamento antigo está em vigor; _ftime_s usa um tempo de 32 bits e _timeb contém a hora de 32 bits.

_ftime_svalida os seus parâmetros.Se passado um ponteiro nulo como timeptr, a função chama o manipulador de parâmetro inválido, conforme descrito em Validação de parâmetro.Se a execução terá permissão para continuar, a função define errno para EINVAL.

Requisitos

Função

Cabeçalho necessário

_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>

Para obter mais informações de compatibilidade, consulte compatibilidade na introdução.

Bibliotecas

Todas as versões da bibliotecas de tempo de execução c.

Exemplo

// 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] );
}
  

Equivalência do .NET Framework

System::DateTime::Now

Consulte também

Referência

Gerenciamento de tempo

asctime, _wasctime

a ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64

gmtime, _gmtime32, _gmtime64

localTime, _localtime32, _localtime64

tempo, _time32, _time64