.\" -*- coding: UTF-8 -*-
'\" t
.\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk)
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.\" References consulted:
.\"     Linux libc source code
.\"     Lewine's _POSIX Programmer's Guide_ (O'Reilly & Associates, 1991)
.\"     386BSD man pages
.\" Modified Sat Jul 24 19:49:27 1993 by Rik Faith (faith@cs.unc.edu)
.\" Modified Fri Apr 26 12:38:55 MET DST 1996 by Martin Schulze (joey@linux.de)
.\" Modified 2001-11-13, aeb
.\" Modified 2001-12-13, joey, aeb
.\" Modified 2004-11-16, mtk
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH ctime 3 "5. Februar 2023" "Linux man\-pages 6.03" 
.SH BEZEICHNUNG
asctime, ctime, gmtime, localtime, mktime \- Datum und Zeit in
aufgeschlüsselte Zeit oder ASCII umwandeln
.SH BIBLIOTHEK
Standard\-C\-Bibliothek (\fIlibc\fP, \fI\-lc\fP)
.SH ÜBERSICHT
.nf
\fB#include <time.h>\fP
.PP
\fBchar *asctime(const struct tm *\fP\fItm\fP\fB);\fP
\fBchar *asctime_r(const struct tm *restrict \fP\fItm\fP\fB,\fP
\fB                    char \fP\fIPuffer\fP\fB[restrict 26]);\fP
.PP
\fBchar *ctime(const time_t *\fP\fIZeitz\fP\fB);\fP
\fBchar *ctime_r(const time_t *restrict \fP\fIZeitz\fP\fB,\fP
\fB                    char \fP\fIPuffer\fP\fB[restrict 26]);\fP
.PP
\fBstruct tm *gmtime(const time_t *\fP\fIzeitz\fP\fB);\fP
\fBstruct tm *gmtime_r(const time_t *restrict \fP\fIzeitz\fP\fB,\fP
\fB                    struct tm *restrict \fP\fIErgebnis\fP\fB);\fP
.PP
\fBstruct tm *localtime(const time_t *\fP\fIzeitz\fP\fB);\fP
\fBstruct tm *localtime_r(const time_t *restrict \fP\fIzeitz\fP\fB,\fP
\fB                    struct tm *restrict \fP\fIErgebnis\fP\fB);\fP
.PP
\fBtime_t mktime(struct tm *\fP\fItm\fP\fB);\fP
.fi
.PP
.RS -4
Mit Glibc erforderliche Feature\-Test\-Makros (siehe
\fBfeature_test_macros\fP(7)):
.RE
.PP
\fBasctime_r\fP(), \fBctime_r\fP(), \fBgmtime_r\fP(), \fBlocaltime_r\fP():
.nf
_POSIX_C_SOURCE
    || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
.fi
.SH BESCHREIBUNG
Die Funktionen \fBctime\fP(), \fBgmtime\fP() und \fBlocaltime\fP() benötigen ein
Argument des Datentyps \fItime_t\fP, 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.
.PP
Die Funktionen \fBasctime\fP() und \fBmktime\fP() benötigen jeweils ein Argument
das eine aufgeschlüsselte Zeitangabe darstellt, die in Jahr, Monat, Tag
usw. aufgeteilt ist.
.PP
Aufgeschlüsselte Zeit wird in der Struktur \fItm\fP gespeichert, die in
\fBtm\fP(3type) beschrieben ist.
.PP
Der Aufruf \fBctime(\fP\fIt\fP\fB)\fP entspricht \fBasctime(localtime(\fP\fIt\fP\fB))\fP. Er
konvertiert die Kalenderzeit \fIt\fP in eine durch Null beendete Zeichenkette
der Form
.PP
.in +4n
.EX
"Wed Jun 30 21:49:08 1993\en"
.EE
.in
.PP
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 \fItzname\fP, \fItimezone\fP
und \fIdaylight\fP (siehe \fBtzset\fP(3)) mit Informationen über die aktuelle
Zeitzone. Die ablaufinvariante Version \fBctime_r\fP() tut dasselbe, speichert
aber die Zeichenkette in einem vom Benutzer gelieferten Zeichenkettenpuffer,
der Platz für mindestens 26 Byte haben sollte. \fItzname\fP, \fItimezone\fP und
\fIdaylight\fP müssen nicht gesetzt sein.
.PP
Die Funktion \fBgmtime\fP() wandelt die Kalenderzeit \fIzeitz\fP 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 \fBgmtime_r\fP() tut das
gleiche, speichert aber die Daten in einer vom Benutzer gelieferten
Struktur.
.PP
Die Funktion \fBlocaltime\fP() wandelt die Kalenderzeit \fIzeitz\fP in eine
aufgeschlüsselte Entsprechung der Zeit um, ausgedrückt relativ zu der vom
Benutzer angegebenen Zeitzone. Die Funktion arbeitet, als ob sie \fBtzset\fP(3)
aufrufen würde und setzt die externen Variablen \fItzname\fP auf die
Informationen über die aktuelle Zeitzone, \fItimezone\fP auf die Differenz
zwischen koordinierter Weltzeit (UTC) und der lokalen Standardzeit in
Sekunden und \fIdaylight\fP 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
\fBlocaltime_r\fP() tut das gleiche, speichert aber die Daten in einer vom
Benutzer gelieferten Struktur. \fItzname\fP, \fItimezone\fP und \fIdaylight\fP müssen
nicht gesetzt sein.
.PP
Die Funktion \fBasctime\fP() wandelt den aufgeschlüsselten Zeitwert \fItm\fP in
eine durch Null beendete Zeichenkette mit dem gleichen Format wie
\fBctime\fP(). Der Rückgabewert zeigt auf eine statisch reservierte
Zeichenkette, die von nachfolgenden Aufrufen irgendwelcher Datums\- und
Zeitfunktionen überschrieben werden kann. Die Funktion \fBasctime_r\fP() tut
das gleiche, speichert aber die Zeichenkette in einem vom Benutzer
gelieferten Zeichenkettenpuffer, der Platz für mindestens 26 Byte haben
sollte.
.PP
Die Funktion \fBmktime\fP() 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 \fItm_wday\fP
und \fItm_yday\fP mitgegeben hat, egal ob in der Zeit der mitgegebenen Struktur
\fItm\fP Sommerzeit ist oder nicht: Ein positiver Wert bedeutet, dass
Sommerzeit ist, Null bedeutet, dass keine Sommerzeit ist und ein negativer
Wert bedeutet, dass \fBmktime\fP() (mit Zeitzoneninformationen und
Systemdatenbanken) versuchen sollte zu bestimmen, ob zur angegebenen Zeit
Sommerzeit ist oder nicht.
.PP
Die Funktion \fBmktime\fP() ändert die Felder der Struktur \fItm\fP wie folgt:
\fItm_wday\fP und \fItm_yday\fP 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); \fItm_isdst\fP 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 \fBmktime\fP() setzt außerdem die Variable \fItzname\fP mit Informationen über
die aktuelle Zeitzone.
.PP
Falls die angegebene aufgeschlüsselte Zeit nicht als Kalenderzeit (Unixzeit
in Sekunden) dargestellt werden kann, gibt \fBmktime\fP() \fI(time_t)\ \-1\fP
zurück und verändert die Elemente der aufgeschlüsselten Zeitstruktur nicht.
.SH RÜCKGABEWERT
Im Erfolgsfall liefern \fBgmtime\fP() und \fBlocaltime\fP() einen Zeiger auf ein
\fIstruct\ tm\fP zurück.
.PP
Im Erfolgsfall liefern \fBgmtime_r\fP() und \fBlocaltime_r\fP() die Adresse der
Struktur zurück, auf die \fIresult\fP zeigt.
.PP
Im Erfolgsfall liefern \fBasctime\fP() und \fBctime\fP() einen Zeiger auf eine
Zeichenkette zurück.
.PP
Im Erfolgsfall liefern \fBasctime_r\fP() und \fBctime_r\fP() einen Zeiger zurück,
auf den \fIbuf\fP zeigt.
.PP
Im Erfolgsfall liefert \fBmktime\fP() die Kalenderzeit (Sekunden seit der
Epoch) zurück, ausgedrückt als Wert des Typs \fItime_t\fP.
.PP
Im Fehlerfall liefert \fBmktime\fP() den Wert \fI(time_t)\ \-1\fP zurück. Die
verbliebenen Funktionen liefern NULL im Fehlerfall zurück. Im Fehlerfall
wird \fIerrno\fP gesetzt, um den Fehler anzuzeigen.
.SH FEHLER
.TP 
\fBEOVERFLOW\fP
Das Ergebnis kann nicht dargestellt werden.
.SH ATTRIBUTE
Siehe \fBattributes\fP(7) für eine Erläuterung der in diesem Abschnitt
verwandten Ausdrücke.
.ad l
.nh
.TS
allbox;
lb lb lbx
l l l.
Schnittstelle	Attribut	Wert
T{
\fBasctime\fP()
T}	Multithread\-Fähigkeit	T{
MT\-Unsicher race:asctime locale
T}
T{
\fBasctime_r\fP()
T}	Multithread\-Fähigkeit	T{
MT\-Sicher locale
T}
T{
\fBctime\fP()
T}	Multithread\-Fähigkeit	T{
MT\-Unsicher race:tmbuf
race:asctime env locale
T}
T{
\fBctime_r\fP(),
\fBgmtime_r\fP(),
\fBlocaltime_r\fP(),
\fBmktime\fP()
T}	Multithread\-Fähigkeit	T{
MT\-Sicher env locale
T}
T{
\fBgmtime\fP(),
\fBlocaltime\fP()
T}	Multithread\-Fähigkeit	T{
MT\-Unsicher race:tmbuf env locale
T}
.TE
.hy
.ad
.sp 1
.SH STANDARDS
POSIX.1\-2001. C99 spezifiziert \fBasctime\fP(), \fBctime\fP(), \fBgmtime\fP(),
\fBlocaltime\fP() und \fBmktime\fP(). POSIX.1\-2008 kennzeichnet \fBasctime_r\fP(),
\fBctime\fP() und \fBctime_r\fP() als veraltet und empfiehlt stattdessen die
Benutzung von \fBstrftime\fP(3).
.PP
POSIX spezifiziert die Parameter von \fBctime_r\fP() nicht als \fIrestrict\fP;
dies ist Glibc\-spezifisch.
.SH ANMERKUNGEN
Die vier Funktionen \fBasctime\fP(), \fBctime\fP(), \fBgmtime\fP() und \fBlocaltime\fP()
geben einen Zeiger auf statische Daten zurück und sind daher nicht
multithread\-fähig. Multithread\-fähige Versionen \fBasctime_r\fP(),
\fBctime_r\fP(), \fBgmtime_r\fP() und \fBlocaltime_r\fP werden durch SUSv2
spezifiziert.
.PP
POSIX.1\-2001 sagt: »Die Funktionen \fBasctime\fP(), \fBctime\fP(), \fBgmtime\fP() und
\fBlocaltime\fP() müssen Rückgabewerte in einem von zwei statischen Objekten
liefern: einer aufgeschlüsselten Zeit und einem Feld des Typs \fIchar\fP. 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.
.PP
In vielen Implementierungen, einschließlich Glibc, wird a 0 in \fItm_mday\fP
als letzter Tag des vorhergehenden Monats interpretiert.
.PP
.\" See http://thread.gmane.org/gmane.comp.time.tz/2034/
Gemäß POSIX.1\-2001 wird \fBlocaltime\fP() benötigt, um sich so zu verhalten,
als sei \fBtzset\fP(3) aufgerufen worden, während \fBlocaltime_r\fP() nicht diese
Anforderung stellt. Für portierbaren Code sollte \fBtzset\fP(3) vor
\fBlocaltime_r\fP() aufgerufen werden.
.SH "SIEHE AUCH"
\fBdate\fP(1), \fBgettimeofday\fP(2), \fBtime\fP(2), \fButime\fP(2), \fBclock\fP(3),
\fBdifftime\fP(3), \fBstrftime\fP(3), \fBstrptime\fP(3), \fBtimegm\fP(3), \fBtzset\fP(3),
\fBtime\fP(7)
.PP
.SH Ü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.
.PP
Diese Übersetzung ist Freie Dokumentation; lesen Sie die
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License Version 3
.UE
oder neuer bezüglich der
Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
.PP
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden,
schicken Sie bitte eine E-Mail an die
.MT debian-l10n-german@lists.debian.org
Mailingliste der Übersetzer
.ME .