Available in

(3) (8) (3)/de (3)/es (3)/fr (3)/ja (3)/pl (3)/pt

Contents

BEZEICHNUNG

asctime, ctime, gmtime, localtime, mktime − wandle binäres Datum und Uhrzeit nach ASCII

ÜBERSICHT

#include <time.h>

char *asctime(const struct tm *timeptr);

char *ctime(const time_t *timep);

struct tm *gmtime(const time_t *timep);

struct tm *localtime(const time_t *timep);

time_t mktime(struct tm *timeptr);

extern char *tzname[2];
long int
timezone;
extern int
daylight;

BESCHREIBUNG

Die Funktionen ctime(), gmtime() und localtime() benötigen ein Argument des Datentyps time_t, welches die Calendar-Zeit darstellt. Bei Interpretation als absolute Zeit stellt sie die Anzahl der Sekunden dar, die seit dem 1. Januar 1970, 00:00.00 Uhr Universalzeit (UTC) verstrichen sind.

Die Funktionen asctime() und mktime() benötigen beide ein Argument das eine aufgeteilte Zeitangabe darstellt, d.h. eine binäre Darstellung, die in Jahr, Monat, Tag usw. aufgeteilt ist. Diese Angaben sind in einer 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, jedoch in Ausnahmefällen bis 61 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 im Monat, 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 Tag 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 Flag das anzeigt ob Sommerzeit herrscht für die angegebene Zeit. Der Wert ist positiv wenn Sommerzeit herrscht, Null wenn nicht, und negativ wenn die Information nicht verfügbar ist.

Die Funktion ctime() wandelt die Calendar-Zeit timep in einen String 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 einen statisch belegten String welcher durch nachfolgende Aufrufe von Datums-/Uhrzeitfunktionen überschrieben werden darf. Die Funktion setzt auch die externe Variable tzname mit Informationen über die aktuelle Zeitzone.

Die Funktion gmtime() wandelt die Calendar-Zeit timep in eine aufgeteilte Zeitangabe, ausgedrückt in Universalzeit (UTC).

Die Funktion localtime() wandelt die Calendar-Zeit timep in eine aufgeteilte Zeitangabe, ausgedrückt relativ zu der Benutzerspezifizierten Zeitzone. Die Funktion setzt auch die externe Variable tzname mit Informationen über die aktuelle Zeitzone, timezone mit der Differenz zwischen Universalzeit (UTC) und der lokalen Standardzeit in Sekunden, sowie daylight auf einen Nicht-Null-Wert wenn Standard-US-Sommerzeitregeln greifen.

Die Funktion asctime() wandelt die aufgeteilte Zeitangabe timeptr in einen String mit dem gleichen Format wie ctime(). Der Rückgabewert zeigt auf einen statisch belegten String welcher durch nachfolgende Aufrufe von Datums-/Uhrzeitfunktionen überschrieben werden darf.

Die Funktion mktime() wandelt die aufgeteilte Zeitangabe, ausgedrückt als lokale Zeit, in Calendar-Zeit. Die Funktion ignoriert die Inhalte der Strukturelemente tm_wday und tm_yday und berechnet sie neu aus den anderen Informationen der Struktur für die aufgeteilte Zeitangabe. Aufrufen von mktime() setzt auch die externe Variable tzname mit Informationen über die aktuelle Zeitzone. Wenn die angegebene aufgeteilte Zeitangabe nicht als Calendar-Zeit dargestellt werden kann gibt mktime() den Wert (time_t)(−1) zurück und verändert die Elemente tm_wday und tm_yday der aufgeteilten Zeitangabe nicht.

KONFORM ZU

SVID 3, POSIX, BSD 4.3, ISO 9899

SIEHE AUCH

date(1), gettimeofday(2), time(2), tzset(3), difftime(3), strftime(3), newctime(3).

COMMENTS

blog comments powered by Disqus