Meine lokale Zeitzone ist EDT. Ich habe einen Zeitstempel: 29 Aug 2003 04:18:52, den ich mit mktime() in einen time_t-Wert konvertiert habe, wobei tm_isdst auf -1 gesetzt wurde. Der time_t-Wert ist 1062145132. Wenn ich gmtime() mit diesem Wert ausführen, bekomme ich 29 Aug 2003 09:18:52. Betrachtet man die von gmtime() zurückgegebene Struktur tm, so ist der Wert von tm_isdst 1. Warum ist diesmal nicht 08:18:52? Soll gmtime nicht mit UTC gleichgesetzt werden, ohne Abhängigkeit von Tageslichtabhängigkeit?Wird gmtime() von der Sommerzeit beeinflusst?
ich bash verwendet haben, wie folgt:
date [email protected]
Fri Aug 29 04:18:52 EDT 2003
TZ=UTC date [email protected]
Fri Aug 29 08:18:52 UTC 2003
Die oben zeigt die erwartete 4 Stunden Differenz zwischen EDT und UTC. Warum zeigt gmtime() nicht den gleichen Unterschied?