Ir ao conteúdo
  • Cadastre-se
Edson de Sousa Silva

Uso da struct tm da bilioteca <time.h>

Recommended Posts

Boa noite, pessoal! Eu tô com uma dúvida aqui tentando aprender as funções de data e hora. Todo tutorial que eu vejo usa a struct tm como ela sendo um ponteiro, isso não fiou muito claro pra mim, por exemplo, quando você usa a biblioteca <time.h> automaticamente ele cria a estrutura? Muito obrigado desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso depende da função que você trabalhe. Algumas funções retornam ponteiros como struct tm* localtime(time_t *), então se da a necessidade de ter um ponteiro para recebe-la. quando você ve uma função retornar char* você precisa albergar isso em um ponteiro char*. Vamos ver um exemplo:
imagine que você tem uma função que retorne um string diferente dependendo do dia da semana, "segund", "terça", etc, a declaração poderia ser:
char* diaSemana(){...}
E na hora de usar poderia ser:
char* dia = diaSemana();
Poderíamos imprimir tal como:
printf("%s", dia);
E a saída seria por exemplo:
"segunda"

Pois o tm seria igual. Agora sabemos que sua pergunta é sobre o mecanismo que tem(Como funciona?). Isso é irrelevante, você não precisa saber como está implementado printf para usa-la por exemplo, simplesmente usamos. Mas se você quer entender o mecanismo a modo de estudo lhe direi que podem haver vários mecanismos que permitem isso. Alguns desses mecanismos podem ser memória dinâmica(resiste a escopos), variáveis globais, o ponteiro retornado bem poderia ser de uma estrutura que ja estivesse declarada de forma global dentro do arquivo time.h, entre outros mecanismos.
 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×