W tym Wskazówka Linux Artykuł, wyjaśnimy, jak używać asctime () Aby pobrać dane czasowe z kalendarza systemowego i przekonwertować je na ciąg. Zbadamy teoretyczny opis struktury tych danych TM, składnię funkcji oraz jej argumenty wejściowe i wyjściowe wraz z typami danych, które obsługuje każdy z nich. Następnie zaimplementujemy użycie tej funkcji z praktycznymi przykładami przy użyciu fragmentów kodu i obrazów.
Składnia funkcji asctime () w języku c
char * str asctime (const struct tm * tm_ptr);Opis funkcji asctime () w języku c
asctime () funkcja pobiera informacje z struktury TM, na które wskazuje *tm_ptr wskaźnik, przekształca go w ciąg i zwraca wskaźnik *str.
Format, który jest zwracany przez tę funkcję w ciągu wyjściowego, jest następujący:
„Www mmm dd hh: mm: ss tys. \ N \ 0”Zarówno dni, jak i miesiące są reprezentowane przez pierwsze trzy litery ich nazwisk. Daty są reprezentowane przez dwie cyfry na dni i miesiące i cztery cyfry w ciągu roku. Ciąg odpowiadający str na końcu zawiera charakter specjalny \ n \ 0.
asctime () funkcja i jej zmienne są zdefiniowane w „czasie.H ”nagłówek. Aby ich użyć, musimy je uwzględnić w „.c ”lub„.plik h ”w następujący sposób:
#włączaćJak uzyskać czas lokalny w formacie ciągu z funkcją Asctime () w języku C
W tym przykładzie pokażemy ci krok po kroku, jak korzystać z asctime () Funkcja, aby uzyskać dane czasu i czasu lokalnego w strukturze TM, a następnie przekonwertować je na ciąg znaków, które odczytują ludzi.
Jak wyjaśniliśmy we wstępie, czas systemu jest obliczany na podstawie czasu UNIX. Dlatego musimy najpierw uzyskać funkcję Time () time_t.
W poniższym fragmencie Time () dostaje czas UNIX U_Time i drukuje go do konsoli dowodzenia:
#włączaćPoniższy obraz wyświetla czas UNIX, który jest zwracany U_Time.
Po uzyskaniu czasu z UNIX musimy przekonwertować te dane na czas lokalny lub GMT i przechowywać je w strukturze całkowitej, tm.
Każda liczba całkowita w tej strukturze reprezentuje sekundy, minuty, godziny, dni itp. Później podamy bardziej szczegółowy opis zmiennych zawartych w tej strukturze i sposób, w jaki możesz uzyskać dostęp do każdego z nich.
Dane ze struktury TM mogą być czasem lokalnym, w którym się masz czas lokalny() lub czas GMT z GMTime ().
Obie funkcje mają czas UNIX za pomocą U_Time jako argument wejściowy i zwróć wskaźnik tm_ptr z tm, które musimy wcześniej zdefiniować, jak pokazano następująco:
#włączaćNależy zauważyć, że zarówno czas UNIX U_Time a dane TM są aktualizowane za każdym razem, gdy wywołuje jedna z funkcji, które pobierają te dane. W przeciwnym razie dane z ostatniego połączenia pozostają przechowywane w ich zmiennych.
W poniższym fragmencie kodu widzimy, jak pobrać dane czasu lokalnego w strukturze TM za pomocą funkcji LocalTime (). Po wywołaniu tej funkcji musisz przekazać czas z UNIX jako argument wejściowy i wskaźnik do TM jako argument wyjściowy.
tm_ptr = localTime (& u_time);W ten sposób przekonwertowaliśmy czas z UNIX na czas lokalny i przechowyliśmy go w strukturze TM. Musimy tylko przekonwertować te dane na ciąg za pomocą asctime ().
W poniższym fragmencie widzimy kod, aby uzyskać czas z UNIX. Oblicz te dane i przechowuj je w TM Struct. Następnie używamy asctime () do konwersji liczb całkowitych struktury, na którą wskazuje *tm_ptr do strun.
Ta funkcja zwraca ciąg, który jest wskazany przez *str_ptr W swoim argumencie wyjściowym.
Na koniec wyprowadzamy uzyskany ciąg do konsoli poleceń za pomocą printf ().
#włączaćPoniższy obraz pokazuje wynik tego kodu:
TM struct
tm struktura i time_t I clock_t Zmienne to predefiniowane struktury i typy danych w „czasie.H ”nagłówek i są używane do przechowywania wyników zwracanych przez niektóre ze zdefiniowanych funkcji tam.
Spójrzmy teraz na strukturę liczby całkowitej TM i nazwy poszczególnych zmiennych, które ją wymyślą:
structmWniosek
W tym Wskazówka Linux Artykuł, wyjaśniliśmy, jak uzyskać czas systemu UNIX i przekonwertować go na ciąg kalendarza za pomocą asctime () krok po kroku. Krótko wyjaśniliśmy również dodatkowe funkcje, które są potrzebne do przetworzenia i pobrania tych danych, a także sposobu obsługi danych TM i czasu. Mamy nadzieję, że ten artykuł uznałeś. Więcej Wskazówka Linux Artykuły na temat języka C, użyj wyszukiwarki na naszej stronie internetowej.