Konwersja czasu w formacie UNIX-a (C++)
Próbuję napisać funkcję konwertującą czas w formacie UNIX-a do czytelnej postaci. Z rokiem sobie poradziłem, ale dzień wydaje się trudniejszy niż na pierwszy rzut oka. Jak dotąd, mam coś takiego:
static _SYSTEMTIME Convert(unsigned long aUnixTime)
{
czas.wMilis = 0;
czas.wRok = (unsigned long)((float)aUnixTime / (364.24f * 24.f * 60.f * 60.f));
czas.wDzien = (aUnixTime - (unsigned long)((float)czas.wRok * 364.24f * 24.f * 60.f * 60.f)); // zwraca 65177
return czas;
}
Czy ktoś może ma rozwiązanie takiej konwersji?