Hallo dedlfix,
Diese Struktur ist jedenfalls kein Standard und damit auch in vielen Systemen unbekannt.
Falls du mit „diese Struktur“ das struct tm
meinst: doch, das ist Teil des POSIX-Standards. Der sagt übrigens nicht, dass die Struktur so wie von PL beschrieben aussehen muss, sondern, wie in POSIX üblich, definiert ein paar Felder, die mindestens vorhanden sein müssen:
The <time.h> header shall declare the tm structure, which shall include at least the following members:
int tm_sec Seconds [0,60]. int tm_min Minutes [0,59]. int tm_hour Hour [0,23]. int tm_mday Day of month [1,31]. int tm_mon Month of year [0,11]. int tm_year Years since 1900. int tm_wday Day of week [0,6] (Sunday =0). int tm_yday Day of year [0,365]. int tm_isdst Daylight Savings flag.
The value of tm_isdst shall be positive if Daylight Savings Time is in effect, 0 if Daylight Savings Time is not in effect, and negative if the information is not available.
Der Unix-Timestamp an sich ist schon deutlich verbreiteter als diese Struktur.
Eine mutige Aussage, ich bezweifle allerdings, dass sie wahr ist.
Eine Zeitzoneninformation ist in der Struktur übrigens auch nicht enthalten.
Diese Struktur ist nicht für den Austausch oder den Transport von Zeit-Daten gedacht. Sie ist eine Schnittstelle zum System. Sie gibt entweder die Zeitinformationen in der konfigurierten Zeitzone an (wenn man localtime()
verwendet) oder sie gibt die Zeitinformationen in UTC an (wenn man gmtime()
oder so verwendet). pl hat nur mal wieder alles durcheinander gewürfelt, was er finden konnte.
Edit:
Mir fällt zusammenfassend ein Wort ein: unzweckmäßig.
Für den Austausch von Zeit-Daten? Ja, klar. Ist ja auch nicht dafür gedacht… es ist eine Low-level-API zum System.
LG,
CK