Provided by: manpages-de-dev_4.21.0-2_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-Unsafe race:asctime locale          │
       ├────────────────────────┼───────────────────────┼────────────────────────────────────────┤
       │asctime_r()             │ Multithread-Fähigkeit │ MT-Safe locale                         │
       ├────────────────────────┼───────────────────────┼────────────────────────────────────────┤
       │ctime()                 │ Multithread-Fähigkeit │ MT-Unsafe race:tmbuf race:asctime env  │
       │                        │                       │ locale                                 │
       ├────────────────────────┼───────────────────────┼────────────────────────────────────────┤
       │ctime_r(), gmtime_r(),  │ Multithread-Fähigkeit │ MT-Safe env locale                     │
       │localtime_r(), mktime() │                       │                                        │
       ├────────────────────────┼───────────────────────┼────────────────────────────────────────┤
       │gmtime(), localtime()   │ Multithread-Fähigkeit │ MT-Unsafe race:tmbuf env locale        │
       └────────────────────────┴───────────────────────┴────────────────────────────────────────┘

STANDARDS

       POSIX.1-2001. C99 spezifiziert asctime(), ctime(),  gmtime(),  localtime()  und  mktime().
       POSIX.1-2008  kennzeichnet  asctime_r(),  ctime() und ctime_r() als veraltet und empfiehlt
       stattdessen die Benutzung von strftime(3).

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

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.

       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.

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⟩.