datum in timestamp konvertieren
-
hi,
gibt es eine möglichkeit datum "struct tm" in timestamp "time_t" zu konvertieren?
thx
-
-
also ich versuche es so... und mktime liefert -1 zurück.
struct tm bisDatum ; time_t timeT, bisTime ; time (&timeT) ; bisDatum = *localtime (&timeT) ; bisDatum.tm_mday = 12 ; bisDatum.tm_mon = 2 ; bisDatum.tm_year = 2009 ; bisDatum.tm_sec = 0 ; bisDatum.tm_min = 0 ; bisDatum.tm_hour = 0 ; bisTime = mktime (&bisDatum) ;
bisTime hat -1
statt timestamp vom Datum 12.02.2009 00:00:00 Uhr
HELP PLS... thx
-
Epoch error (read the fine manual: man: mktime).
2009 bedeuted 1900 + 2009 = 3909, und bis dahin ist der Unix-Timestamp ein paar mal übergelaufen.
Versuch's mal so:struct tm bisDatum; time_t timeT; bisDatum.tm_mday = 12; bisDatum.tm_mon = 1; // Februar ist 1 bisDatum.tm_year = 109; // 2009 ist 109 bisDatum.tm_sec = 0; bisDatum.tm_min = 0; bisDatum.tm_hour = 0; timeT = mktime(&bisDatum); printf("%d\n", timeT);