gmtime

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu time.h - Index


Header-Datei

time.h

Kategorie

Uhrzeit- und Datumsroutinen

Prototyp

struct tm *gmtime(const time_t *timer);

Beschreibung

Konvertiert Datum und Zeit in die Greenwich-Mean-Zeit (GMT).

gmtime akzeptiert die Adresse eines von time zurückgegebenen Werts und gibt einen Zeiger auf eine Struktur des Typs tm zurück, die Zeitwerte enthält. gmtime konvertiert sie direkt in GMT-Zeit.

Die globale Variable _timezone des Typs long sollte auf die Differenz zwischen GMT und der lokalen Standardzeit (in PST ist _timezone 8*60*60) gesetzt sein. Die globale Variable _daylight sollte nur dann auf einen Wert ungleich Null gesetzt werden, wenn bei der Umrechnung die Sommerzeit berücksichtigt werden muss.

Die Struktur tm ist in der Header-Datei time.h folgendermaßen definiert:

struct tm {

int tm_sec; /* Sekunden */

int tm_min; /* Minuten */

int tm_hour; /* Stunden (0 - 23) */

int tm_mday; /* Tag des Monats (1 - 31) */

int tm_mon; /* Monat (0 - 11) */

int tm_year; /* Jahr (Kalenderjahr minus 1900) */

int tm_wday; /* Wochentag (0 - 6; Sonntag ist 0) */

int tm_mday; /* Tag des Jahres (0 -365) */

int tm_isdst; /* Ungleich Null, wenn Sommerzeit berücksichtigt werden muss. */

};

Diese Felder speichern die Zeit auf 24-Stunden-Basis, den Tag des Monats (1 bis 31), den Monat (0 bis 11), den Wochentag (Sonntag entspricht 0), das Jahr - 1900, den Tag des Jahres (0 bis 365) und einen Wert ungleich Null, wenn die Sommerzeit berücksichtigt werden muss.

Rückgabewert

gmtime gibt einen Zeiger auf die Struktur mit den Zeitangaben zurück. Diese Struktur ist statisch, wird also bei jedem weiteren Aufruf überschrieben.

Beispiel



 #include <stdio.h>
 #include <stdlib.h>
 #include <time.h>
 /* Pazifik-Standardzeit und -Sommerzeit */
 char *tzstr = "TZ=PST8PDT";
 int main(void)
 {
    time_t t;
    struct tm *gmt, *area;
    putenv(tzstr);
    tzset();
    t = time(NULL);
    area = localtime(&t);
    printf("Local time is: %s", asctime(area));
    gmt = gmtime(&t);
    printf("GMT is:        %s", asctime(gmt));
    return 0;
 }



Portabilität



POSIX Win32 ANSI C ANSI C++

+

+

+

+