kennen:lib:mktime
Inhaltsverzeichnis
mktime()
#include
<ctime>
time_t mktime (struct tm *brokentime)
Rechnet kalendarisch gegebene lokale Zeit in eine Systemzeit um.
Parameter
brokentime | Zeiger auf eine struct tm-Struktur mit lokaler Zeit |
Ergebnis
Rückgabewert: Systemzeit.
Die Codierung der Systemzeit ist durch den Sprachstandard ISO C 9899:1999 nicht festgelegt. Eine verbreitete Implementation ist der "UNIX-Zeitstempel" (Sekunden seit 01.01.1970 0:00:00 GMT).
Die Komponenten tm_wday
und tm_yday
werden zuerst ignoriert
und dann neu gesetzt.
Andere Komponenten werden beim Aufruf in ihren zulässigen Bereich normalisiert,
so wird tm_mday
erst dann endgültig festgelegt,
wenn tm_year
und tm_mon
bestimmt sind.
Kann die Kalenderzeit nicht in eine Systemzeit umgewandelt werden,
liefert die Funktion (time_t) -1
.
Siehe auch
Beispiel
- mktime.cpp
#include <ctime> #include <iostream> int main() { using namespace std; struct tm zeit; zeit.tm_sec = 0; // Sekunden nach voller Minute [0, 60] zeit.tm_min = 0; // Minuten nach voller Stunde [0, 59] zeit.tm_hour = 12; // Stunden seit Mitternacht [0, 23] zeit.tm_mday = 24; // Tag im Monat [1, 31] zeit.tm_mon = 11; // Monate seit Januar [0, 11] zeit.tm_year = 103; // Jahre seit 1900 zeit.tm_isdst= -1; // nicht bekannt, ob Sommerzeit time_t t = mktime(&zeit); if (t == (time_t)-1) zeit.tm_wday = 7; char* wochentag[] = { "Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "???" }; cout << "Zeitstempel = " << t << '\n'; cout << zeit.tm_mday << ". " << zeit.tm_mon+1 << ". " << zeit.tm_year+1900 << " ist ein " << wochentag[zeit.tm_wday] << '\n'; }
kennen/lib/mktime.txt · Zuletzt geändert: 2019-11-20 15:57 von 127.0.0.1