Funkcja wypisująca czas, oraz dodatkowy komentarz

0

Witam!

Potrzebuję napisać funkcję wypisująca czas na ekran (zwykły printf), oraz dodatkowy komunikat, np. "wchodzimy tu i tu"

funkcja(time, komunikat);

wiem, że time musi się składać z struktury, która ma zaimplementowane zmienne, sekundy minuty itd.

struct czas
{
    int czas_sec; //Sekundy. 
    int czas_min; //Minuty. 
    int czas_hour; //Godziny. 
    int czas_md; //Dzień miesiąca.
    int czas_msc; //Miesiąc. 
    int czas_rok; // rok.
}

a komunikat ma chyba być const char*, tylko że jak wcześniej próbowałem to jakoś mi się to nie udawało.

Nie mam pojęcia jak zrobić taką funkcję, oraz jak zarządzać czasem, czy znajdzie się jakiś dobrodziej który mi to napisze? Wiem, że to jest proste do napisania, dlatego nie jest wysiłkiem napisanie czegoś takiego, zależy mi na czasie, a mam go bardzo mało.

Z góry dziękuje!

#Edit

Funkcja ma zwracać czas w którym została wykonana, a tego "komunikatu" ma jednak nie być.

0

Dzięki za link, sorry że o takie oczywistości pytam, z czasem walczę (:D) da radę zrobić tak, żeby nie było miesięcy po angielsku, tylko po prostu w cyfrach wszystko? 16.04.2015 1600 ?

2

Coś takiego:

time_t t = time(NULL);
struct tm tm = *localtime(&t);

printf("now: %d-%d-%d %d:%d:%d\n", tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, tm.tm_sec);

Proponuję użyć google :)

0

Zarąbiście, dzięki ziomek. :D Wiem, przepraszam, normalnie używam, ale mam urwanie głowy... Dużo rzeczy na głowię i liczyłem na dobrodzieja, który mi pomoże. Dziękuje Ci bardzo. A jeszcze jedno, chciałbym stworzyć czasomierz mojego programu. Chciałbym, żeby był bardziej precyzyjny, niż:

time_t start, finish;
time(&start);
time(&finish);
difftime(finish, start);

nie wiem czemu, ale mi dziwnie ten kod zaokrągla do jedności. Jest jakiś sposób, żeby działało to bardziej precyzyjnie?

1 użytkowników online, w tym zalogowanych: 0, gości: 1