Manipular Datas em C

PHP, Java, JavaScript, XML, XHTML, HTML, CSS, ASP, Delphi, Assembly, LaTeX, C, UML, Flash, Perl, SQL, Python, Zope, Pascal, WML. Se conhece mais de 3 siglas referidas, este é o forum para si.

Moderadores: Administradores, Moderadores

Manipular Datas em C

Mensagempor tWse » Domingo Nov 21, 2004 1:50

Boas,
Será que alguém por acaso conhece algumas funções para manipulação de datas em C? Algo que por exemplo me retorne a diferença em segundos entre duas datas no seguinte formato "Sun, 06 Nov 1994 08:49:37 GMT".
Cumprimentos
tWse
Membro de Prata
Membro de Prata
 
Mensagens: 110
Registado: Terça Jun 08, 2004 16:38

Mensagempor Taxus » Domingo Nov 21, 2004 12:34

Não deve ser complicado.
Para qualquer processador, as datas não existem... É sempre usada uma data padrão (que penso ser 00:00 de 1 Janeiro de 1900) e a partir dessa data os processadoers contam os segundos que já passaram.
Não tenho a certeza mas penso que existem funcoes para fazer isso que queres, ou pelo menos algo parecido.
Se não houver, não custa nada fazer uma função que converta cada uma das datas em segundos a partir dos dados (que têm que estar num determinado formatdo) de um ficheiro ou inseridos pelo utilizador.
Se precisares de dicas acerca de como fazer isto avisa.
KaoS Contingency UT2k4 clan
http://www.kaos-eu.com/
Msn Taxus@netvisao.pt
Taxus
Membro de Ouro
Membro de Ouro
 
Mensagens: 946
Registado: Quarta Set 11, 2002 3:33

Mensagempor Taxus » Domingo Nov 21, 2004 12:52

Mais umas dicas
Procura no google
time.h
Vê isto:
http://www.cplusplus.com/ref/ctime/
http://docs.freebsd.org/info/gawk/gawk. ... tions.html
http://www.dinkumware.com/htm_cl/time.html
http://iel.ucdavis.edu/people/cperez/test13/node3.html

Resumindo:
Functions Description

asctime() Converts broken-down time into a string.

clock() Determines the processor time used.

ctime() Converts from calendar time to local time.

difftime() Computes the difference between two calender times.

gmtime() Converts from calendar time to broken time.

localtime() Converts from calendar time to broken-down time.

mktime() Converts broken-down time to calender time.

strftime() Places characters into an array.

time() Determines the current calendar time.
KaoS Contingency UT2k4 clan
http://www.kaos-eu.com/
Msn Taxus@netvisao.pt
Taxus
Membro de Ouro
Membro de Ouro
 
Mensagens: 946
Registado: Quarta Set 11, 2002 3:33

Mensagempor tWse » Terça Nov 23, 2004 0:02

Boas,
Obrigado pela ajuda Taxus, mas eu já tinha visto a time.h. Acabei por fazer a função para o que queria, no entanto obrigado pela ajuda na mesma.
Cumprimentos
tWse
Membro de Prata
Membro de Prata
 
Mensagens: 110
Registado: Terça Jun 08, 2004 16:38

Re: Manipular Datas em C

Mensagempor ZePinga » Sexta Dez 24, 2004 2:39

tWse Escreveu:Boas,
Será que alguém por acaso conhece algumas funções para manipulação de datas em C? Algo que por exemplo me retorne a diferença em segundos entre duas datas no seguinte formato "Sun, 06 Nov 1994 08:49:37 GMT".



É simples usas o strptime convertes isso para time_t em que te dá a data em segundos desde a epoch de 1970 tempo do unix e depois fazes um cast para long e já tá agora já podes subtrair somar etc se keres voltar ao mm formato eu aconselho-te a usar libcurl .
IST, Lisbon DEI - LEIC
www.dei.ist.utl.pt
ZePinga
Aprendiz
Aprendiz
 
Mensagens: 98
Registado: Domingo Set 12, 2004 22:29

Mensagempor bcunha » Sexta Dez 24, 2004 11:03

Nos tempos da faculdade esse foi o meu primeiro trabalho de C mas era para ser feito por um algoritmo nosso e não um já existente. Claro que apereçeram N progs. diferentes, alguns funcionavam :lol:
Mas existe um algoritmo optimizado para fazer o que queres, provávelmente é o que essas libs usam.

Cmps.
AMD64 2800+ || ASUS A8V || 2x256 OCZ 3500 || ATI 9800SE 128MB @ 9800XT || 2xSeagate 7200 80 GB sata Raid 0 || Sony DRU-500A || LG 1710S Adoro o cheiro de napalm por a manhã.
bcunha
Membro Diamante
Membro Diamante
 
Mensagens: 1130
Registado: Quarta Out 02, 2002 9:26


Voltar para Programação

Quem está ligado:

Utilizador a ver este Fórum: Nenhum utilizador registado e 1 visitante

cron