MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 1 | SYNOPSIS |
Zesstra | d59c389 | 2019-11-28 20:53:39 +0100 | [diff] [blame] | 2 | #include <time.h> |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 3 | |
Zesstra | d59c389 | 2019-11-28 20:53:39 +0100 | [diff] [blame] | 4 | int mktime(int *ts) |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 5 | |
| 6 | BESCHREIBUNG |
Zesstra | d59c389 | 2019-11-28 20:53:39 +0100 | [diff] [blame] | 7 | Ist das Argument <ts> ein Array mit 9 Elementen (int) entsprechend |
Zesstra | 5481d49 | 2021-04-08 20:07:06 +0200 | [diff] [blame] | 8 | des Rueckgabewertes von localtime(), so liefert die Funktion |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 9 | die Anzahl Sekunden seit dem 01. Januar 1970, 00:00:00 zurueck. |
Zesstra | 5481d49 | 2021-04-08 20:07:06 +0200 | [diff] [blame] | 10 | Hierbei wird immer die aktuelle Zeitzone des Hostrechners zugrunde |
| 11 | gelegt. |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 12 | Dies ist von Nutzen, wenn man ein Datum/Uhrzeit hat, diese aber als |
| 13 | Ganzzahl-Wert speichern will oder eine Zeitdifferenz zwischen zwei |
| 14 | Daten ausrechnen will. |
| 15 | |
| 16 | Das Array muss dabei so aufgebaut sein: |
| 17 | int TM_SEC (0): Sekunde in der Minute (0..59) |
| 18 | int TM_MIN (1): Minute in der Stunde (0..59) |
| 19 | int TM_HOUR (2): Stunde des Tages (0..23) |
| 20 | int TM_MDAY (3): Tag im Monat (1..31) |
| 21 | int TM_MON (4): Monat des Jahres (0..11) |
| 22 | int TM_YEAR (5): Jahr (z.B. 2001) |
| 23 | int TM_WDAY (6): Wochentag (0..6, Sonntag = 0) |
| 24 | int TM_YDAY (7): Tag im Jahr (0..365) |
Zesstra | 5481d49 | 2021-04-08 20:07:06 +0200 | [diff] [blame] | 25 | inz TM_ISDST (8): Sommerzeit, Daylight Saving Time (1,0,-1) |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 26 | |
Zesstra | d59c389 | 2019-11-28 20:53:39 +0100 | [diff] [blame] | 27 | TM_YDAY und TM_WDAY werden ignoriert und koennen beliebige Zahlen |
| 28 | enthalten. |
Zesstra | 5481d49 | 2021-04-08 20:07:06 +0200 | [diff] [blame] | 29 | TM_ISDST kann 1 (Sommerzeit), 0 (keine Sommerzeit) oder -1 sein. Bei |
| 30 | -1 wird versucht, zu erraten, ob Sommerzeit fuer die angegebene Zeit |
| 31 | aktiv sein sollte. |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 32 | |
Zesstra | d59c389 | 2019-11-28 20:53:39 +0100 | [diff] [blame] | 33 | BEISPIELE |
| 34 | Man hat ein Datum/Uhrzeit (z.B. Benutzereingabe), welches als |
| 35 | Unix-Zeitstempel gespeichert werden soll: |
| 36 | // "Mit, 24. Okt 2007, 10:48:00" entspricht folgendem Zeitstempel: |
| 37 | int unixzeit = mktime(({0, 48, 09, 24, 09, 2007, 0, 01, 0})); |
Zesstra | 5481d49 | 2021-04-08 20:07:06 +0200 | [diff] [blame] | 38 | |
Zesstra | d59c389 | 2019-11-28 20:53:39 +0100 | [diff] [blame] | 39 | GESCHICHTE |
| 40 | Eingefuehrt in LDMud 3.3.718. |
MG Mud User | 88f1247 | 2016-06-24 23:31:02 +0200 | [diff] [blame] | 41 | |
| 42 | SIEHE AUCH |
Zesstra | 5481d49 | 2021-04-08 20:07:06 +0200 | [diff] [blame] | 43 | ctime(E), gmtime(E), localtime(E), time(E), utime(E) |