Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

gmtime, gmtime64 - Datum und Uhrzeit in UTC umwandeln

&pagelevel(4)&pagelevel

Definition

#include <time.h>

struct tm *gmtime(const time_t *sek_zg);
struct tm *gmtime64(const time64_t *sek_zg);

gmtime und gmtime64 interpretieren die Zeitangabe, auf die sek_zg zeigt, als Anzahl der seit dem Stichtag (Epoche) vergangenen Sekunden.

Die Funktionen berechnen daraus Datum und Uhrzeit und speichern das Ergebnis in einer Struktur vom Typ tm.
Wenn der POSIX-Bindeschalter vorrangig eingebunden ist, wird das Ergebnis im UTC-Format (Universal Time Coordinated) gespeichert, andernfalls als lokale Zeit.

Negative Werte werden als Sekunden vor dem Stichtag interpretiert. Das kleinste darstellbare Datum ist bei gmtime der 13.12.1901 20:45:52 und bei gmtime64 der 01.01.1900 00:00:00 lokale Zeit. Standardmäßig ist der Stichtag immer der 01.01.1970 00:00:00.

Das größte darstellbare Datum ist bei gmtime der 19.01.2038 03:14:07 und bei gmtime64 der 18.03.4317 02:44:48.

Warnung

Wenn der POSIX-Bindeschalter nicht vorrangig eingebunden ist, ist es nicht möglich, das Ergebnis im UTC-Format zu erhalten.
gmtime und gmtime64 entsprechen in diesem Fall den Funktionen localtime und localtime64, sie liefern jeweils die lokale Zeit.

Returnwert

Zeiger auf die berechnete Struktur. gmtime und gmtime64 legen das Ergebnis in einer Struktur ab, die wie folgt in <time.h> deklariert ist:



struct tm 
{
  int   tm_sec;        /* Sekunden (0-59) */
  int   tm_min;        /* Minuten (0-59) */
  int   tm_hour;       /* Stunden (0-23) */
  int   tm_mday;       /* Tag des Monats (1-31) */
  int   tm_mon;        /* Monate ab Jahresbeginn (0-11) */
  int   tm_year;       /* Jahre seit 1900 */
  int   tm_wday;       /* Wochentag (0-6, Sonntag=0) */
  int   tm_yday;       /* Tage seit dem 1. Januar (0-365) */
  int   tm_isdst;      /* Sommerzeitanzeige  */
};


NULL

im Fehlerfall

Hinweise

Die Funktionen asctime, ctime, ctime64, gmtime, gmtime64, localtime und localtime64 schreiben ihre Ergebnisse in denselben C-internen Datenbereich, so dass der Aufruf einer dieser Funktionen das vorherige Ergebnis einer der anderen Funktionen überschreibt.

Beispiel

#include <time.h>
#include <stdio.h>
struct tm *t;
char *s;
time_t clk;
int main(void)
{
  clk = time((time_t *)0);
  t = gmtime(&clk);
  printf("Jahr: %d\n", t->tm_year + 1900);
  printf("Uhrzeit in Stunden: %d\n", t->tm_hour);
  printf("Jahrestag: %d\n", t->tm_yday);
  s = asctime(t);
  printf("%s", s);
  return 0;
}

Siehe auch

asctime, ctime, ctime64, localtime, localtime64