Hej, chodzi mi o program w Visualu, podaję datę i godzinę w przyszłości i rusza licznik do zera (dni, godz, min i sek do tej daty). szukałem dużo w necie i nic. uwaga: ta data może być np. z 2013 roku! nie ma chyba na to żadnych funkcji wbudowanych. edit: oczywiście nie chodzi mi o cały program tylko jakieś wskazówki, algorytmy, itp.
z góry dzięki za cokolwiek. pozdr:)
ok, ale jak rozwiązać sprawę tej przyszłej daty, jak ją zamienić na sekundy czy jakoś zestawić z datą obecną ( time(NULL) ) żeby zwracało różnicę.
wiem jak to zrobić z datą przeszłą, ale nie z przyszłą.
visual oferuje strukturę DateTime, bardzo prosta w obsłudze:
http://msdn.microsoft.com/en-us/library/system.datetime.aspx
tubbs napisał(a):
... żeby zwracało różnicę.
wiem jak to zrobić z datą przeszłą, ale nie z przyszłą.
Robi się to identycznie.
Zainteresuj się linkiem od @winerfresh, są to standardowe funkcje biblioteczne które możesz użyć na każdym kompilatorze C lub C++.
Musisz pobrać czas od użytkownika (rok, miesiąc, ...) i zapisać go w odpowiednich polach struktury tm
. Pól tm_wday
i tm_yday
nie musisz wypełniać. Następnie tą strukturę zamienić do postaci time_t
odpowiednią funkcją z modułu <ctime>
(nie pamiętam nazwy tej funkcji). time_t
to ilość sekund jaka minęła od pewnej ustalonej daty. Obecny czas w postaci time_t
pobierzesz funkcją time
. Do obliczania różnicy czasów w postaci time_t
użyj zwykłego odejmowania, wynik będzie w sekundach.