asctime
, _wasctime
Konvertieren Sie eine tm
-Zeitstruktur in einer Zeichenfolge. Sicherere Versionen dieser Funktionen sind verfügbar; siehe asctime_s
, _wasctime_s
.
Syntax
char *asctime(
const struct tm *timeptr
);
wchar_t *_wasctime(
const struct tm *timeptr
);
Parameter
timeptr
Zeit-/Datumsstruktur.
Rückgabewert
asctime
gibt einen Zeiger auf das Zeichenfolgeergebnis zurück; _wasctime
gibt einen Zeiger auf das Breitzeichenfolge-Ergebnis zurück. Es gibt keinen Fehlerrückgabewert.
Hinweise
Sicherere Versionen dieser Funktionen sind verfügbar; siehe asctime_s
, _wasctime_s
.
Die asctime
-Funktion konvertiert eine als Struktur gespeicherte Zeit in eine Zeichenfolge. Der timeptr
Wert wird in der Regel aus einem Aufruf von gmtime
oder localtime
, die beide einen Zeiger auf eine tm
Struktur zurückgeben, die in TIME.H definiert wird.
timeptr -Member |
Wert |
---|---|
tm_hour |
Stunden seit Mitternacht (0-23) |
tm_isdst |
Positiv, wenn Sommerzeit wirksam ist; 0, wenn die Sommerzeit nicht wirksam ist; negativ, wenn der Status der Sommerzeit unbekannt ist. Die C-Laufzeitbibliothek wendet die Regeln der Vereinigten Staaten an, um die Berechnung der Sommerzeit (DST, Daylight Saving Time) zu implementieren. |
tm_mday |
Tag des Monats (1–31) |
tm_min |
Minuten nach Stunde (0-59) |
tm_mon |
Monat (0-11; Januar = 0) |
tm_sec |
Sekunden nach Minute (0-59) |
tm_wday |
Wochentag (0-6; Sonntag = 0) |
tm_yday |
Tag des Jahres (0-365; 1. Januar = 0) |
tm_year |
Jahr (aktuelles Jahr minus 1900) |
Informationen zum Konfigurieren der Ortszeit finden Sie in den time
, _ftime
und localtime
funktionen. Informationen zum Definieren der Zeitzonenumgebung und globalen Variablen finden Sie in der _tzset
Funktion.
Das von asctime
erstellte Zeichenfolgeergebnis enthält genau 26 Zeichen und sieht so aus: Wed Jan 2 02:03:55 1980\n\0
. Eine 24-Stunden-Uhr wird verwendet. Alle Felder haben eine feste Breite. Die Zeilenwechsel- und Nullzeichen nehmen die letzten beiden Stellen der Zeichenfolge ein. asctime
verwendet einen einzelnen, statisch zugeordneten Puffer, um die Rückgabezeichenfolge zu halten. Jeder Aufruf dieser Funktion zerstört das Ergebnis des vorherigen Aufrufs.
_wasctime
ist eine breitformatige Version von asctime
, und verhält sich andernfalls identisch mit asctime
.
Diese Funktionen überprüfen ihre Parameter. Wenn timeptr
es sich um einen Nullzeiger handelt oder wenn er Außerhalb des Bereichs Werte enthält, wird der ungültige Parameterhandler aufgerufen, wie in der Parameterüberprüfung beschrieben. Wenn die weitere Ausführung zugelassen wird, gibt die Funktion NULL
zurück und setzt errno
auf EINVAL
.
Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Informationen zum Ändern dieses Verhaltens finden Sie im Global state in the CRT.
Generische Textroutinenzuordnung
TCHAR.H Routine |
_UNICODE und _MBCS nicht definiert |
_MBCS Definiert |
_UNICODE Definiert |
---|---|---|---|
_tasctime |
asctime |
asctime |
_wasctime |
Anforderungen
Routine | Erforderlicher Header |
---|---|
asctime |
<time.h> |
_wasctime |
<time.h> oder <wchar.h> |
Beispiel
Dieses Programm platziert die Systemzeit in der langen ganzzahligen Zahl aclock
, übersetzt sie in die Struktur newtime
und konvertiert sie dann in Zeichenfolgenform für die Ausgabe mit der asctime
Funktion.
// 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
Siehe auch
Zeitverwaltung
ctime
, _ctime32
, _ctime64
, _wctime
, _wctime32
, _wctime64
_ftime
, _ftime32
, _ftime64
gmtime
, _gmtime32
, _gmtime64
localtime
, _localtime32
, _localtime64
time
, _time32
, _time64
_tzset
asctime_s
, _wasctime_s
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für