Ik ben bezig met een C project maar heb helaas weinig kennis van de C library. Met mktime wordt een ingevoerde datum naar een long omgezet. Nu wil ik weten of deze datum in het verleden ligt. Kan ik dit doen door met de functie time de huidige tijd op te halen en dan de twee longs van elkaar af te trekken?
http://www.informit.com/g...=cplusplus&seqNum=65&rl=1
mktime zet een tm struct om naar time_t. Wat is er onduidelijk?
mktime zet een tm struct om naar time_t. Wat is er onduidelijk?
Verwijderd
Ja, dat kan. Het type wat mktime retourneert is een time_t. Dit is een mathematisch type wat dus vergeleken kan worden met een andere variabele van het type time_t.
Wat is er inderdaad onduidelijk, even zoeken moet toch lukken?
Wat is er inderdaad onduidelijk, even zoeken moet toch lukken?
Van variabelen van het type time_t kan je het verschil berekenen met de standaard functie difftime(). Zie http://www.dinkumware.com...t&page=time.html#difftime
A polar bear is a rectangular bear after a coordinate transformation.
mktime() retourneert een unsigned long, waarbij 0 1 january 1970 is.Verwijderd schreef op vrijdag 03 november 2006 @ 11:25:
Ik ben bezig met een C project maar heb helaas weinig kennis van de C library. Met mktime wordt een ingevoerde datum naar een long omgezet. Nu wil ik weten of deze datum in het verleden ligt. Kan ik dit doen door met de functie time de huidige tijd op te halen en dan de twee longs van elkaar af te trekken?
Dat is niet noodzakelijk zo. Standard C zegt niets over hoe een time_t waarde geïnterpreteerd moet worden; time_t is zelfs niet noodzakelijk een unsigned long.igmar schreef op vrijdag 03 november 2006 @ 14:55:
[...]
mktime() retourneert een unsigned long, waarbij 0 1 january 1970 is.
A polar bear is a rectangular bear after a coordinate transformation.
Pagina: 1