![Geraldo José Ferreira Chagas Júnior Geraldo José Ferreira Chagas Júnior](//static.vivaolinux.com.br/imagens/fotos/1202265522Imagem001.jpg)
gjr_rj
(usa Debian)
Enviado em 11/03/2008 - 03:15h
Cara o C/C++, perl, pascal, php, vb, .net ... ecredito que todas as linguagens fazem isso. Na realidade, a data é a quantidade de uma unidade de tempo (normalmente segundos) que se passou a partir de uma determinada data (normalmente 01/01/1900). A forma como você vê aa/mm/aaaa normalmente é uma forma já formatada desse valor ( normalmente um inteiro longo ).
Para calcular o dia exato que esse número representa, basta usar um algorítmo simples.
exemplo (levando em consideração que são segundos a partir de 1/1/1900):
a data 123456789 representa:
1 ano = 60s * 60 min * 24h * 365d = 31536000s
ano: 123456789/31536000=3,914... anos
3 anos = 94608000
123456789-94608000=60384789s
e assim sucessivamente, incluindo umas regras para achar ano bissexto, chega-se lá.
está tarde e estou com sono
depois posto os comando em c/c++