Provided by: manpages-de-dev_0.10-1_all bug

BEZEICHNUNG

       asctime,   ctime,  gmtime,  localtime,  mktime  -  Datum  und  Zeit  in
       aufgeschlusselte Zeit oder ASCII umwandeln

"UBERSICHT

       #include <time.h>

       char *asctime(const struct tm *tm);
       char *asctime_r(const struct tm *tm, char *puffer);

       char *ctime(const time_t *timep);
       char *ctime_r(const time_t *timep, char *puffer);

       struct tm *gmtime(const time_t *timep);
       struct tm *gmtime_r(const time_t *timep, struct tm *ergebnis);

       struct tm *localtime(const time_t *timep);
       struct tm *localtime_r(const time_t *timep, struct tm *ergebnis);

       time_t mktime(struct tm *tm);

   Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):

       asctime_r(), ctime_r(), gmtime_r(), localtime_r():
              _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _BSD_SOURCE ||
              _SVID_SOURCE || _POSIX_SOURCE

BESCHREIBUNG

       Die Funktionen ctime(), gmtime() und localtime() benotigen 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() benotigen jeweils ein Argument
       das eine aufgeschlusselte Zeitangabe darstellt, die in Jahr, Monat, Tag
       usw. aufgeteilt ist.

       Aufgeschlusselte  Zeit  wird  in  der  Struktur  tm gespeichert, die in
       <time.h> wie folgt definiert ist:

           struct tm {
               int tm_sec;         /* Sekunden */
               int tm_min;         /* Minuten */
               int tm_hour;        /* Stunden */
               int tm_mday;        /* Monatstag */
               int tm_mon;         /* Monat */
               int tm_year;        /* Jahr */
               int tm_wday;        /* Wochentag */
               int tm_yday;        /* Jahrestag */
               int tm_isdst;       /* Sommerzeit */
           };

       Die Elemente der Struktur tm sind:

       tm_sec    die Anzahl der Sekunden nach der vollen Minute, normalerweise
                 im   Bereich  0  bis  59,  kann  aber  bis  zu  60  sein,  um
                 Schaltsekunden zu erlauben.

       tm_min    die Anzahl der Minuten nach der vollen Stunde, im  Bereich  0
                 bis 59.

       tm_hour   die Anzahl der Stunden nach Mitternacht, im Bereich 0 bis 23.

       tm_mday   der Tag des Monats, im Bereich 1 bis 31.

       tm_mon    die Anzahl der Monate seit Januar, im Bereich 0 bis 11.

       tm_year   die Anzahl der Jahre nach 1900.

       tm_wday   die Anzahl der Tage seit Sonntag, im Bereich 0 bis 6.

       tm_yday   die Anzahl der Tage seit dem 1. Januar, im Bereich 0 bis 365.

       tm_isdst  ein  Schalter,  der  anzeigt,  ob  in  der  angegebenen  Zeit
                 Sommerzeit ist. Der Wert ist in der Sommerzeit positiv,  Null
                 wenn  nicht  und negativ wenn die Information nicht verfugbar
                 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  Abkurzungen  fur  die  Wochentage  sind >>Sun<<, >>Mon<<, >>Tue<<,
       >>Wed<<, >>Thu<<, >>Fri<<, und >>Sat<<.  Die Abkurzungen fur die Monate
       sind  >>Jan<<,  >>Feb<<,  >>Mar<<,  >>Apr<<, >>May<<, >>Jun<<, >>Jul<<,
       >>Aug<<, >>Sep<<, >>Oct<<,  >>Nov<<,  und  >>Dec<<.   Der  Ruckgabewert
       zeigt   auf   eine   statisch   reservierte   Zeichenkette,  die  durch
       nachfolgende  Aufrufe  von  Datums-  und  Zeitfunktionen  uberschrieben
       werden  darf.  Die  Funktion  setzt auch die externen Variablen tzname,
       timezone und daylight  (siehe  tzset(3))  mit  Informationen  uber  die
       aktuelle Zeitzone. Die ablaufinvariante Version ctime_r() tut dasselbe,
       speichert aber die  Zeichenkette  in  einem  vom  Benutzer  gelieferten
       Zeichenkettenpuffer,  der  Platz  fur  mindestens 26 Byte haben sollte.
       tzname, timezone und daylight mussen nicht gesetzt sein.

       Die  Funktion  gmtime()  wandelt  die  Kalenderzeit   timep   in   eine
       aufgeschlusselte   Entsprechung  der  Zeit  um,  die  in  koordinierter
       Weltzeit (UTC) ausgedruckt wird. Sie kann NULL  zuruckgeben,  wenn  das
       Jahr  nicht  in  eine  Ganzzahl  passt. Der Ruckgabewert zeigt auf eine
       statisch  reservierte  Struktur,   die   von   nachfolgenden   Aufrufen
       irgendwelcher Datums- und Zeitfunktionen uberschrieben 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  timep  in  eine
       aufgeschlusselte Entsprechung der Zeit um, ausgedruckt relativ  zu  der
       vom  Benutzer  angegebenen  Zeitzone. Die Funktion arbeitet, als ob sie
       tzset(3) aufrufen wurde und setzt die externen Variablen tzname auf die
       Informationen  uber  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 wahrend einem
       Teil des Jahres Sommerzeitregeln gelten.  Der  Ruckgabewert  zeigt  auf
       eine  statisch  reservierte  Struktur,  die  von nachfolgenden Aufrufen
       irgendwelcher Datums- und Zeitfunktionen uberschrieben werden kann. Die
       Funktion  localtime_r()  tut  das  gleiche, speichert aber die Daten in
       einer vom Benutzer gelieferten Struktur. tzname, timezone und  daylight
       mussen nicht gesetzt sein.

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

       Die Funktion mktime() wandelt die aufgeschlusselten  Zeitstruktur,  die
       als   lokale   Zeit   ausgedruckt   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() andert 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  auBerhalb
       ihres erlaubten Intervalls liegen, werden sie normalisiert (so dass zum
       Beispiel der 40. Oktober auf 9. November geandert wird); tm_isdst  wird
       (unabhangig   vom   anfanglichen   Wert)   auf   einen  positiven  Wert
       beziehungsweise 0 gesetzt,  um  anzuzeigen,  ob  zur  angegebenen  Zeit
       Sommerzeit  ist  oder nicht. Der Aufruf von mktime() setzt auBerdem die
       Variable tzname mit Informationen uber die aktuelle Zeitzone.

       Falls die  angegebene  aufgeschlusselte  Zeit  nicht  als  Kalenderzeit
       (Unixzeit   in   Sekunden)   dargestellt  werden  kann,  gibt  mktime()
       (time_t) -1 zuruck und verandert  die  Elemente  der  aufgeschlusselten
       Zeitstruktur nicht.

R"UCKGABEWERT

       Jede dieser Funktionen gibt den beschriebenen Wert oder NULL zuruck (-1
       im Fall von mktime()), falls ein Fehler entdeckt wurde.

KONFORM ZU

       POSIX.1-2001. C89 und C99 spezifizieren 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).

ANMERKUNGEN

       Die  vier Funktionen asctime(), ctime(), gmtime() und localtime() geben
       einen Zeiger auf statische Daten zuruck und sind daher nicht sicher fur
       Threads.  Die  fur  Threads  sicheren Versionen asctime_r(), ctime_r(),
       gmtime_r() und localtime_r werden durch  SUSv2  spezifiziert  und  sind
       seit Libc 5.2.5 verfugbar.

       POSIX.1-2001  sagt:  >>Die  Funktionen asctime(), ctime(), gmtime() und
       localtime() sollen Ruckgabewerte in einem von zwei statischen  Objekten
       liefern: einer aufgeschlusselten Zeit und einem Feld des Typs char. Das
       Ausfuhren  irgendeiner  der  Funktionen   konnte   die   zuruckgegebene
       Information  uberschreiben, die von diesen beiden Objekten durch andere
       Funktionen    zuruckgegeben    wurden.<<    Dies    kann     in     der
       Glibc-Implementierung vorkommen.

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

       Die Glibc-Version von struct tm hat zusatzliche Felder.

              long tm_gmtoff;           /* Sekunden ostlich von UTC */
              const char *tm_zone;      /* Abkurzung der Zeitzone */

       definiert, wenn _BSD_SOURCE  gesetzt  war  bevor  <time.h>  eingebunden
       wurde. Dies ist eine BSD-Erweiterung, die in 4.3BSD-Reno enthalten ist.

       GemaB  POSIX.1-2004 wird localtime() benotigt, um sich so zu verhalten,
       als sei tzset(3) aufgerufen worden, wahrend localtime_r()  nicht  diese
       Anforderung   stellt.   Fur   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)

KOLOPHON

       Diese   Seite   ist   Teil   der  Veroffentlichung  3.32  des  Projekts
       Linux-man-pages. Eine Beschreibung des Projekts und Informationen,  wie
       Fehler     gemeldet     werden     konnen,     finden     sich    unter
       http://www.kernel.org/doc/man-pages/.

"UBERSETZUNG

       Die deutsche Ubersetzung dieser Handbuchseite wurde von Patrick  Rother
       <krd@gulu.net> und Chris Leick <c.leick@vollbio.de> erstellt.

       Diese  Ubersetzung  ist  Freie Dokumentation; lesen Sie die GNU General
       Public  License  Version  3  oder  neuer   bezuglich   der   Copyright-
       Bedingungen. Es wird KEINE HAFTUNG ubernommen.

       Wenn  Sie  Fehler  in  der  Ubersetzung  dieser  Handbuchseite  finden,
       schicken     Sie     bitte     eine     E-Mail     an     <debian-l10n-
       german@lists.debian.org>.

                               25. Februar 2010                       CTIME(3)