asctime, _wasctime

Konwertowanie tm struktury czasu na ciąg znaków. Dostępne są bezpieczniejsze wersje tych funkcji; zobacz asctime_s, _wasctime_s.

Składnia

char *asctime(
   const struct tm *timeptr
);
wchar_t *_wasctime(
   const struct tm *timeptr
);

Parametry

timeptr
Struktura godziny/daty.

Wartość zwracana

asctime zwraca wskaźnik do wyniku ciągu znaków; _wasctime Zwraca wskaźnik do wyniku ciągu o szerokim znaku. Nie ma wartości zwracanej przez błąd.

Uwagi

Dostępne są bezpieczniejsze wersje tych funkcji; zobacz asctime_s, _wasctime_s.

Funkcja asctime konwertuje czas przechowywany jako strukturę na ciąg znaków. Wartość timeptr jest zwykle uzyskiwana z wywołania metody gmtime lub localtime, która zwraca wskaźnik do struktury zdefiniowanej tm w funkcji TIME.H.

timeptr Członkowskich Wartość
tm_hour Godziny od północy (0-23)
tm_isdst Dodatnie, jeśli czas letni jest w mocy; 0, jeśli czas letni nie jest w mocy; ujemny, jeśli stan czasu letniego jest nieznany. Biblioteka języka C w czasie wykonywania zakłada reguły Stany Zjednoczone dotyczące implementowania obliczeń czasu letniego (DST).
tm_mday Dzień miesiąca (1–31)
tm_min Minuty po godzinie (0–59)
tm_mon Miesiąc (0–11; Styczeń = 0)
tm_sec Sekundy po minucie (0–59)
tm_wday Dzień tygodnia (0–6; Niedziela = 0)
tm_yday Dzień roku (0–365; 1 stycznia = 0)
tm_year Rok (bieżący rok minus 1900)

Aby uzyskać informacje na temat konfigurowania czasu lokalnego, zobacz timefunkcje , _ftimei localtime . Aby uzyskać informacje na temat definiowania środowiska strefy czasowej i zmiennych globalnych, zobacz _tzset funkcję .

Wynik ciągu wygenerowany przez asctime program zawiera dokładnie 26 znaków i ma postać Wed Jan 2 02:03:55 1980\n\0. Jest używany zegar 24-godzinny. Wszystkie pola mają stałą szerokość. Znak nowego wiersza i znak null zajmują dwa ostatnie pozycje ciągu. asctime używa pojedynczego, statycznie przydzielonego buforu do przechowywania zwracanego ciągu. Każde wywołanie tej funkcji niszczy wynik poprzedniego wywołania.

_wasctime jest wersją o szerokim znaku asctime, a w przeciwnym razie zachowuje się identycznie z asctime.

Te funkcje weryfikują swoje parametry. Jeśli timeptr jest wskaźnikiem o wartości null lub jeśli zawiera wartości poza zakresem, wywoływana jest nieprawidłowa procedura obsługi parametrów zgodnie z opisem w temacie Weryfikacja parametrów. Jeśli wykonywanie jest dozwolone do kontynuowania, funkcja zwraca NULL i ustawia wartość errnoEINVAL.

Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.

Mapowanie rutynowego tekstu ogólnego

TCHAR.H Rutynowych _UNICODE i _MBCS niezdefiniowane _MBCS Zdefiniowane _UNICODE Zdefiniowane
_tasctime asctime asctime _wasctime

Wymagania

Procedura Wymagany nagłówek
asctime <time.h>
_wasctime <time.h> lub <wchar.h>

Przykład

Ten program umieszcza czas systemowy w długiej liczbą całkowitą aclock, tłumaczy ją na strukturę newtime, a następnie konwertuje go na formularz ciągu dla danych wyjściowych przy użyciu asctime funkcji .

// crt_asctime.c
// compile with: /W3

#include <time.h>
#include <stdio.h>

int main( void )
{
    struct tm   *newTime;
    time_t      szClock;

    // Get time in seconds
    time( &szClock );

    // Convert time to struct tm form
    newTime = localtime( &szClock );

    // Print local time as a string.
    printf_s( "Current date and time: %s", asctime( newTime ) ); // C4996
    // Note: asctime is deprecated; consider using asctime_s instead
}
Current date and time: Sun Feb  3 11:38:58 2002

Zobacz też

Zarządzanie czasem
ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64
_ftime, _ftime32, _ftime64
gmtime, _gmtime32, _gmtime64
localtime, _localtime32, _localtime64
time, _time32, _time64
_tzset
asctime_s, _wasctime_s