PDA

View Full Version : [C] Differenza di tempo tra strutture tm


Spike79
31-10-2007, 14:35
Ciao, ho due strutture

struct tm *tempo_avvio;
struct tm *tempo_fine;


Come faccio ad ottenere la differenza di tempo (HH:MM:SS) tra la seconda e la prima ?

andbin
31-10-2007, 14:43
Ciao, ho due strutture

struct tm *tempo_avvio;
struct tm *tempo_fine;


Come faccio ad ottenere la differenza di tempo (HH:MM:SS) tra la seconda e la prima ?La cosa più veloce è convertirle in time_t, fare la differenza e quindi calcolare ore/minuti/secondi con delle divisioni/moduli (es. sec=diff % 60 poi min=(diff / 60) % 60 ecc....).

Spike79
31-10-2007, 15:02
In effetti mi sa che è la cosa migliore....

cionci
31-10-2007, 15:17
La cosa più veloce è convertirle in time_t, fare la differenza e quindi calcolare ore/minuti/secondi con delle divisioni/moduli (es. sec=diff % 60 poi min=(diff / 60) % 60 ecc....).
Oppure con la differenza in time_t puoi ritornare alla struct tm ;)

andbin
31-10-2007, 16:01
Oppure con la differenza in time_t puoi ritornare alla struct tm ;)Sì certamente, se si vuole avere solo ore/minuti/secondi. E notare, va usata gmtime, non certo localtime.
Gli altri campi come tm_mday, tm_mon ecc... però non credo che avrebbero granché senso.... ;)

cionci
31-10-2007, 16:06
Gli altri campi come tm_mday, tm_mon ecc... però non credo che avrebbero granché senso.... ;)
Fino ad un mese avrebbe senso...oltre certamente no ;)