oracular (3) mktime.3.gz

Provided by: manpages-de-dev_4.23.1-1_all bug

BEZEICHNUNG

       asctime, ctime, gmtime, localtime, mktime - Datum und Zeit in aufgeschlüsselte Zeit oder ASCII umwandeln

BIBLIOTHEK

       Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

       #include <time.h>

       char *asctime(const struct tm *tm);
       char *asctime_r(const struct tm *restrict tm,
                           char Puffer[restrict 26]);

       char *ctime(const time_t *Zeitz);
       char *ctime_r(const time_t *restrict Zeitz,
                           char Puffer[restrict 26]);

       struct tm *gmtime(const time_t *zeitz);
       struct tm *gmtime_r(const time_t *restrict zeitz,
                           struct tm *restrict Ergebnis);

       struct tm *localtime(const time_t *zeitz);
       struct tm *localtime_r(const time_t *restrict zeitz,
                           struct tm *restrict Ergebnis);

       time_t mktime(struct tm *tm);

   Mit Glibc erforderliche Feature-Test-Makros (siehe feature_test_macros(7)):

       asctime_r(), ctime_r(), gmtime_r(), localtime_r():
       _POSIX_C_SOURCE
           || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

BESCHREIBUNG

       Die Funktionen ctime(), gmtime() und localtime() benötigen ein Argument des Datentyps time_t, welches die
       Kalenderzeit darstellt. Wenn sie als absoluter Zeitwert interpretiert wird, stellt sie die Unixzeit  dar,
       die Sekunden, die seit dem 1. Januar 1970, 00:00.00 Uhr koordinierter Weltzeit (UTC) verstrichen sind.

       Die Funktionen asctime() und mktime() benötigen jeweils ein Argument das eine aufgeschlüsselte Zeitangabe
       darstellt, die in Jahr, Monat, Tag usw. aufgeteilt ist.

       Aufgeschlüsselte Zeit wird in der Struktur tm gespeichert, die in tm(3type) beschrieben ist.

       Der Aufruf ctime(t) entspricht asctime(localtime(t)). Er konvertiert die Kalenderzeit  t  in  eine  durch
       Null beendete Zeichenkette der Form

           "Wed Jun 30 21:49:08 1993\n"

       Die  Abkürzungen  für  die  Wochentage  sind  »Sun«,  »Mon«,  »Tue«,  »Wed«,  »Thu«, »Fri« und »Sat«. Die
       Abkürzungen für die Monate sind »Jan«, »Feb«, »Mar«, »Apr«, »May«, »Jun«,  »Jul«,  »Aug«,  »Sep«,  »Oct«,
       »Nov«  und  »Dec«.  Der  Rückgabewert  zeigt  auf  eine  statisch  reservierte  Zeichenkette,  die  durch
       nachfolgende Aufrufe von Datums- und Zeitfunktionen überschrieben werden darf. Die  Funktion  setzt  auch
       die externen Variablen tzname, timezone und daylight (siehe tzset(3)) mit Informationen über die aktuelle
       Zeitzone. Die ablaufinvariante Version ctime_r() tut dasselbe, speichert aber die Zeichenkette  in  einem
       vom  Benutzer  gelieferten  Zeichenkettenpuffer,  der  Platz für mindestens 26 Byte haben sollte. tzname,
       timezone und daylight müssen nicht gesetzt sein.

       Die Funktion gmtime() wandelt die Kalenderzeit zeitz in eine aufgeschlüsselte Entsprechung der  Zeit  um,
       die  in  koordinierter Weltzeit (UTC) ausgedrückt wird. Sie kann NULL zurückgeben, wenn das Jahr nicht in
       eine Ganzzahl passt. Der Rückgabewert zeigt auf eine statisch reservierte Struktur, die von nachfolgenden
       Aufrufen  irgendwelcher Datums- und Zeitfunktionen überschrieben werden kann. Die Funktion gmtime_r() tut
       das gleiche, speichert aber die Daten in einer vom Benutzer gelieferten Struktur.

       Die Funktion localtime() wandelt die Kalenderzeit zeitz in eine aufgeschlüsselte  Entsprechung  der  Zeit
       um,  ausgedrückt  relativ  zu  der  vom  Benutzer angegebenen Zeitzone. Die Funktion arbeitet, als ob sie
       tzset(3) aufrufen würde und setzt die externen Variablen tzname auf die Informationen über  die  aktuelle
       Zeitzone,  timezone  auf die Differenz zwischen koordinierter Weltzeit (UTC) und der lokalen Standardzeit
       in  Sekunden  und  daylight  auf  einen  Wert  ungleich  Null,  falls  während  einem  Teil  des   Jahres
       Sommerzeitregeln  gelten.  Der  Rückgabewert  zeigt  auf  eine  statisch  reservierte  Struktur,  die von
       nachfolgenden Aufrufen irgendwelcher Datums- und Zeitfunktionen überschrieben werden kann.  Die  Funktion
       localtime_r()  tut  das  gleiche,  speichert  aber  die Daten in einer vom Benutzer gelieferten Struktur.
       tzname, timezone und daylight müssen nicht gesetzt sein.

       Die Funktion asctime() wandelt den aufgeschlüsselten Zeitwert tm in eine durch Null beendete Zeichenkette
       mit  dem  gleichen Format wie ctime(). Der Rückgabewert zeigt auf eine statisch reservierte Zeichenkette,
       die von nachfolgenden Aufrufen irgendwelcher Datums- und Zeitfunktionen überschrieben  werden  kann.  Die
       Funktion  asctime_r()  tut das gleiche, speichert aber die Zeichenkette in einem vom Benutzer gelieferten
       Zeichenkettenpuffer, der Platz für mindestens 26 Byte haben sollte.

       Die Funktion mktime() wandelt die aufgeschlüsselten Zeitstruktur, die als lokale Zeit  ausgedrückt  wird,
       in  eine  Entsprechung  der  Kalenderzeit.  Die  Funktion  ignoriert die Werte, die der Aufrufende in den
       Feldern tm_wday und tm_yday mitgegeben hat, egal ob in der Zeit der mitgegebenen Struktur  tm  Sommerzeit
       ist  oder  nicht:  Ein positiver Wert bedeutet, dass Sommerzeit ist, Null bedeutet, dass keine Sommerzeit
       ist und ein negativer Wert bedeutet, dass mktime()  (mit  Zeitzoneninformationen  und  Systemdatenbanken)
       versuchen sollte zu bestimmen, ob zur angegebenen Zeit Sommerzeit ist oder nicht.

       Die  Funktion  mktime()  ändert  die Felder der Struktur tm wie folgt: tm_wday und tm_yday werden auf die
       Werte gesetzt, die vom Inhalt anderer Felder bestimmt werden; falls Elemente der Stuktur außerhalb  ihres
       erlaubten  Intervalls  liegen,  werden  sie  normalisiert  (so  dass  zum Beispiel der 40. Oktober auf 9.
       November geändert wird); tm_isdst wird (unabhängig  vom  anfänglichen  Wert)  auf  einen  positiven  Wert
       beziehungsweise  0  gesetzt, um anzuzeigen, ob zur angegebenen Zeit Sommerzeit ist oder nicht. Der Aufruf
       von mktime() setzt außerdem die Variable tzname mit Informationen über die aktuelle Zeitzone.

       Falls die angegebene aufgeschlüsselte Zeit nicht als  Kalenderzeit  (Unixzeit  in  Sekunden)  dargestellt
       werden  kann,  gibt  mktime()  (time_t) -1  zurück  und  verändert  die  Elemente  der  aufgeschlüsselten
       Zeitstruktur nicht.

RÜCKGABEWERT

       Im Erfolgsfall liefern gmtime() und localtime() einen Zeiger auf ein struct tm zurück.

       Im Erfolgsfall liefern gmtime_r() und localtime_r() die Adresse  der  Struktur  zurück,  auf  die  result
       zeigt.

       Im Erfolgsfall liefern asctime() und ctime() einen Zeiger auf eine Zeichenkette zurück.

       Im Erfolgsfall liefern asctime_r() und ctime_r() einen Zeiger zurück, auf den buf zeigt.

       Im  Erfolgsfall  liefert mktime() die Kalenderzeit (Sekunden seit der Epoch) zurück, ausgedrückt als Wert
       des Typs time_t.

       Im Fehlerfall liefert mktime() den Wert (time_t) -1 zurück. Die verbliebenen Funktionen liefern  NULL  im
       Fehlerfall zurück. Im Fehlerfall wird errno gesetzt, um den Fehler anzuzeigen.

FEHLER

       EOVERFLOW
              Das Ergebnis kann nicht dargestellt werden.

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

       ┌────────────────────────┬───────────────────────┬───────────────────────────────────────────────────────┐
       │SchnittstelleAttributWert                                                  │
       ├────────────────────────┼───────────────────────┼───────────────────────────────────────────────────────┤
       │asctime()               │ Multithread-Fähigkeit │ MT-Unsicher race:asctime locale                       │
       ├────────────────────────┼───────────────────────┼───────────────────────────────────────────────────────┤
       │asctime_r()             │ Multithread-Fähigkeit │ MT-Sicher locale                                      │
       ├────────────────────────┼───────────────────────┼───────────────────────────────────────────────────────┤
       │ctime()                 │ Multithread-Fähigkeit │ MT-Unsicher race:tmbuf race:asctime env locale        │
       ├────────────────────────┼───────────────────────┼───────────────────────────────────────────────────────┤
       │ctime_r(), gmtime_r(),  │ Multithread-Fähigkeit │ MT-Sicher env locale                                  │
       │localtime_r(), mktime() │                       │                                                       │
       ├────────────────────────┼───────────────────────┼───────────────────────────────────────────────────────┤
       │gmtime(), localtime()   │ Multithread-Fähigkeit │ MT-Unsicher race:tmbuf env locale                     │
       └────────────────────────┴───────────────────────┴───────────────────────────────────────────────────────┘

VERSIONEN

       POSIX spezifiziert die Parameter von ctime_r() nicht als restrict; dies ist Glibc-spezifisch.

       In vielen Implementierungen, einschließlich Glibc, wird a 0 in tm_mday als letzter Tag des vorhergehenden
       Monats interpretiert.

       Gemäß  POSIX.1-2001  wird  localtime()  benötigt,  um  sich  so zu verhalten, als sei tzset(3) aufgerufen
       worden, während localtime_r() nicht diese Anforderung stellt. Für portierbaren Code sollte  tzset(3)  vor
       localtime_r() aufgerufen werden.

STANDARDS

       asctime()
       ctime()
       gmtime()
       localtime()
       mktime()
              C11, POSIX.1-2008.

       asctime_r()
       ctime_r()
       gmtime_r()
       localtime_r()
              POSIX.1-2008.

GESCHICHTE

       gmtime()
       localtime()
       mktime()
              C89, POSIX.1-2001.

       asctime()
       ctime()
              C89, POSIX.1-2001. Wurde in POSIX.1-2008 als veraltet markiert (und strftime(3) empfohlen).

       gmtime_r()
       localtime_r()
              POSIX.1-2001.

       asctime_r()
       ctime_r()
              POSIX.1-2001. Wurde in POSIX.1-2008 als veraltet markiert (und strftime(3) empfohlen).

ANMERKUNGEN

       Die  vier  Funktionen asctime(), ctime(), gmtime() und localtime() geben einen Zeiger auf statische Daten
       zurück und sind daher  nicht  multithread-fähig.  Multithread-fähige  Versionen  asctime_r(),  ctime_r(),
       gmtime_r() und localtime_r werden durch SUSv2 spezifiziert.

       POSIX.1-2001  sagt:  »Die Funktionen asctime(), ctime(), gmtime() und localtime() müssen Rückgabewerte in
       einem von zwei statischen Objekten liefern: einer aufgeschlüsselten Zeit und einem Feld  des  Typs  char.
       Das  Ausführen  irgendeiner  der  Funktionen könnte die zurückgegebene Information überschreiben, die von
       diesen  beiden  Objekten  durch   andere   Funktionen   zurückgegeben   wurden.«   Dies   kann   in   der
       Glibc-Implementierung vorkommen.

SIEHE AUCH

       date(1),  gettimeofday(2), time(2), utime(2), clock(3), difftime(3), strftime(3), strptime(3), timegm(3),
       tzset(3), time(7)

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite  wurde  von  Patrick  Rother  <krd@gulu.net>,  Chris  Leick
       <c.leick@vollbio.de>,    Mario    Blättermann   <mario.blaettermann@gmail.com>   und   Helge   Kreutzmann
       <debian@helgefjell.de> erstellt.

       Diese Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die  GNU  General  Public  License  Version  3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE
       HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte  eine  E-Mail  an  die
       Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.