Ir para conteúdo

Unix timestamp


fredericopissarra

Posts Recomendados

Gente,

Apenas uma dica rápida (a qual me foi chamada a atenção recentemente). Sempre achei que time() retornasse o número de segundos desde 1º de janeiro de 1970, às 0:00, na timezone local, mas não é isso que acontece... Ele retorna o número de segundos desde essa data no UTC+0 ou "horário de Greewich".

Assim fica mais fácil calcular os vários horários por timezones, adicionando ou subtraíndo segundos do valor!

[]s
Fred

Link para o comentário
Compartilhar em outros sites

  • 2 semanas depois...

Boa. Eu passei por isso nesse trecho do readpe, ao tentar extrair o timestamp de compilação de um binário PE:

char timestr[40] = "(invalid)";
  struct tm *t = gmtime((time_t *) &header->TimeDateStamp);
  if (t)
  strftime(timestr, sizeof(timestr), "%a, %d %b %Y %H:%M:%S UTC", t);

No final, deixei exibindo em UTC-0 mesmo. ?

Fonte: https://github.com/merces/pev/blob/master/src/readpe.c#L657

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...