Time t

Origem: Wikipédia, a enciclopédia livre.
time_t
Título a ser usado para criar uma ligação interna é Time t.

O tipo de dado time_t é definido pela biblioteca ISO da linguagem C para armazenar valores de tempo. Estes valores são obtidos através da função time() que é definida no arquivo de cabeçalho de nome <time.h>. O padrão ISO C define o time_t como um tipo aritmético, mas não especifica qualquer tipo de dado, intervalo de valores, frequência ou codificação para ele. O resultado das operações aritméticas sobre este tipo também não são determinadas por este padrão.

Os sistemas de padrão Unix e POSIX implementam o time_t como um inteiro com sinal (tipicamente com 32 ou 64 bits) que representa o número de segundos desde o início da era Unix: meia-noite de 1 de janeiro de 1970 UTC (com exceção dos segundos bissextos). Alguns sistemas suportam valores negativos de tempo, enquanto outros não.

Além da função time(), o padrão ISO C especifica outras funções e tipos para converter valores de tempo em valores para determinados calendários, e vice e versa.

Exemplo[editar | editar código-fonte]

O código em linguagem C mostrado a seguir recupera o tempo corrente, o formata como uma cadeia de caracteres e o escreve na saída padrão.

# include <stdio.h>
# include <time.h>

 int main(void)
 {
     time_t now;
     struct tm  ts;
     char       buf[80];

     // Obtem o tempo corrente
     now = time(NULL);

     // Formata e imprime o tempo, "ddd yyyy-mm-dd hh:mm:ss zzz"
     ts = *localtime(&now);
     strftime(buf, sizeof(buf), "%a %Y-%m-%d %H:%M:%S %Z", &ts);
     printf("%s\n", buf);

     return 0;
 }

Ver também[editar | editar código-fonte]