Time t: diferenças entre revisões
... intervalo de valores, freqüência ou codificação para ele.
Foi mudado para.
... intervalo de valores, frequência ou codificação para ele. |
|||
Linha 1: | Linha 1: | ||
{{Título errado|título=time_t}} |
{{Título errado|título=time_t}} |
||
O [[tipo de dado]] '''time_t''' é definido pela biblioteca [[Organização Internacional para Padronização|ISO]] da [[linguagem de programação C|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|<time.h>]]. O padrão [[ISO C]] define o <code>time_t</code> como um tipo aritmético, mas não especifica qualquer tipo de dado, intervalo de valores, |
O [[tipo de dado]] '''time_t''' é definido pela biblioteca [[Organização Internacional para Padronização|ISO]] da [[linguagem de programação C|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|<time.h>]]. O padrão [[ISO C]] define o <code>time_t</code> 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 <code>time_t</code> como um inteiro com sinal (tipicamente com [[32 bit|32]] ou [[64 bit|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 [[segundo bissexto|segundos bissextos]]). Alguns sistemas suportam valores negativos de tempo, enquanto outros não. |
Os sistemas de padrão [[Unix]] e [[POSIX]] implementam o <code>time_t</code> como um inteiro com sinal (tipicamente com [[32 bit|32]] ou [[64 bit|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 [[segundo bissexto|segundos bissextos]]). Alguns sistemas suportam valores negativos de tempo, enquanto outros não. |
Revisão das 18h40min de 22 de dezembro de 2014
- 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
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;
}