Rainer W. schrieb:
He S. schrieb:
Im folgenden soll dann die drei Werte so in der Variable drin stehen:
datetime_variable(uint32_t) = 5072023
Die Reihenfolge ist schon ein bisschen abartig.
Welchen tiefen Sinn mag es haben, die Wertigkeit der Stellen derart
durcheinander zu würfeln?
Jeder Größer-/Kleiner-Vergleich (Sortieren) wird damit zu einer
mittleren Orgie.
Agree!
Würden sich die Leute blos mal die ISO-8601 (oder auch DIN-5008, rfc3339 ...) ansehen, als immer was Neues "erfinden" zu wollen ...
Stefan F. schrieb:
Ich frage, weil ein Zeitpunkt als unit32 normalerweise völlig
anders aussieht, nämlich Sekunden nach dem 1.1.1970 00:00:00.
Das wird schon spaßig, wenn man den 31.12.1969 23:59:59 in der Kodierung
darstellen möchte.
Jede Codierung hat seine Schwächen - besonders aber die des TO's, angefangen bei seinem "Jahr(uint16_t)". Vor dem Jahr 2000 ist da nichts ...
Stefan F.'s Vorschlag ist etwas unvollständig dargestellt. Die Unix Epoch auf die er sich wohl bezieht (Unix time / POSIX time / Unix timestamp), "ist die Anzahl der Sekunden, die seit dem 1. Januar 1970 (Mitternacht UTC/GMT) vergangen sind, ohne Schaltsekunden (in ISO-8601-Darstellung also 1970-01-01T00:00:00Z)".
Siehe auch: https://de.wikipedia.org/wiki/Unixzeit. Dort wird auch auf das Jahr-2038-Problem (eine weiter Schwäche) eingegangen.
Eine umfassende Zusammenstellung findet sich z.B. unter https://www.epochconverter.com/