Różnica w języku C

Różnica w języku C
Funkcje zdefiniowane w „czasie.Nagłówek H ”służy do określenia, obliczenia i konwersji czasów Unix. Jednostka czasu w tym systemie jest druga. Aby uzyskać dane daty, należy wykonać konwersję.

W tym Wskazówka Linux Artykuł, pokażemy, jak korzystać z funkcji difftime (), aby określić różnicę między dwoma czasami Unix. Omówimy składnię tej funkcji, argumenty wejściowe i wyjściowe oraz typy danych użyte w każdym przypadku. Następnie stosujemy funkcję z niektórymi praktycznymi przykładami, w tym fragmentów kodu na obrazach.

Funkcja difftime ()

Składnia funkcji difftime () w języku c

Double dif = difftime (time_t t_2, tim_t t_1);

Opis funkcji difftime () w języku c

difftime () Funkcja oblicza różnicę czasu w sekundach między T_1 i T_2 i zwraca wynik różnica.

Typ zmiennej TIME_T jest częścią biblioteki „Time” i jest zdefiniowany w jej nagłówku. Zarówno Time_T, Clock_T i TM są typedef który jest używany przez funkcje w tej bibliotece do zwrócenia swoich wyników.

difftime () Funkcja jest zwykle stosowana do obliczenia różnicy między danym czasem a bieżącym czasem Unix. Następnie używamy matematyki podziału, aby znaleźć różnicę dni, godzin, minut itp.

difftime () jest zdefiniowany w „czasie.H ”nagłówek. Przed tą funkcją musimy ją uwzględnić w „.c ”lub„.plik h ”w następujący sposób:

#włączać

Kiedyś uwzględniamy „czas.H ”nagłówek, możemy użyć difftime (), czas () i wszystkie funkcje, które są zdefiniowane w „czasie.H".

Jak obliczyć różnicę czasową między dwoma znacznikami znaczników za pomocą funkcji difftime () w języku c

W tym przykładzie obliczamy liczbę sekund, które upłynęły od 1 stycznia 2000 o 00:00:00, aż ten kod zostanie wykonany na komputerze.

Pierwszym krokiem jest włączenie bibliotek, których używamy i zdefiniowanie T_1 I T_2 zmienne typu time_t i podwójne różnica Jak pokazano następująco:

#włączać
#włączać
void main ()

Double t_diff;
time_t t_1, t_2;
//…

Czas UNIX to sekundy upłynęły od 00:00:00 UTC 1 stycznia 1970 r. W dniu i godzinie 1 stycznia 2000 o 00:00:00 ten licznik wynosi 946 695.600 sekund. To jest wartość T_2 zmienny.

Obecny czas UNIX jest określany za pomocą funkcji TIME (). Ta funkcja zwraca bieżący czas w zmiennej typu Time_t. W takim przypadku tak jest T_1 które zdefiniowaliśmy wcześniej.

W poniższym fragmencie przypisujemy czas UNIX odpowiadający 1 stycznia 2000 r. W czasie 00:00:00 do T_1. Otrzymujemy bieżący czas UNIX w T_2 za pomocą funkcji TIME () i wyświetlamy wynik w konsoli polecenia za pomocą funkcji printf ().

#włączać
#włączać
void main ()

Time_t T_1, T_2 = 946695600;
t_1 = czas (null);
printf („Czas UNIX to: %ld \ n”, t_1);

Poniższy obraz pokazuje wykonanie tego fragmentu i liczbę sekund unix T_1:

Po uzyskaniu aktualnego czasu w T_2 zmienna, mamy już dwa dane, których potrzebujemy do argumentów wejściowych difftime () funkcjonować.

Następnym krokiem jest znalezienie różnicy czasu między tymi dwoma danymi. Aby to zrobić, nazywamy difftime () funkcja z T_1 oraz T_2 Jako argumenty wejściowe i podwójne difF Jako argument wyjściowy.

Poniższy fragment pokazuje pełny kod, który wywołuje tę funkcję i wyświetla różnicę między T_1 I T_2 W konsoli dowodzenia:

#włączać
#włączać
void main ()

Doublediff;
Time_t T_1, T_2 = 946695600;
t_1 = czas (null);
diff = difftime (t_1, t_2);
printf („Różnica w sekundach to: %li \ n”, (długie int) diff);

Poniższy obraz pokazuje wyjście Difftime (), różnica sekund między 00:00:00 UTC 1 stycznia 1970 r. Oraz czas, w którym ten kod jest wykonywany w wierszu poleceń:

Jak przekonwertować sekundy UNIX na format DATETIME w języku C

Funkcja ctime () akceptuje zmienne typu time_t w swoich argumentach wejściowych i zwraca ciąg z czasem UNIX, który jest konwertowany na format datetime.

Następnie używamy kodu z poprzedniego przykładu oraz funkcji CTime () i printf (), aby wyświetlić czasy T_1 I T_2 które są konwertowane na datetime.

#włączać
#włączać
void main ()

Doublediff;
Time_t T_1, T_2 = 946695600;
t_1 = czas (null);
diff = difftime (t_1, t_2);
printf („różnica między %s”, ctime (& t_2));
printf („i %s”, ctime (& t_1));
printf („to sekundy %s \ n”, (długie int) diff);

Poniższy obraz pokazuje format daty i godziny na T_1 I T_2:

Wniosek

W tym Wskazówka Linux Artykuł, wyjaśniliśmy proces krok po kroku, jak korzystać difftime () Aby znaleźć różnicę między dwoma liczbami unix. Krótko wyjaśniliśmy również niektóre z dodatkowych funkcji biblioteki „czas”, które są potrzebne do uzyskania tych danych i przekonwertowania ich na datę i format. Mamy nadzieję, że ten artykuł uznałeś. Aby uzyskać więcej wskazówek na temat języka C, użyj wyszukiwarki na naszej stronie internetowej.