time() : date, heure système
difftime(): temps écoulé en secondes entre 2 dates
Prototype:
- time_t time( time_t * pintps);
- double difftime( time_t t1, time_t t2);
dans: <time.h>
Description:
time() fournit l'intervalle de temps écoulé depuis le 01/01/1970 et place ce résultat à l'adresse pointée par pintps, si elle n'est pas 'NULL'.
L'appel 'time(NULL)' fournit simplement ce nombre.
Cette durée peut être convertie en (année,mois,jour,heure,...) par une des fonctions localtime() ou gmtime().
Cette durée peut être convertie en chaîne par la fonctions ctime().
Valeur renvoyée:
- time() renvoie le nombre de secondes écoulées depuis le 01/01/1970.
- difftime() retourne sous forme d'un double la durée, en secondes entre 2 dates
Voir aussi:
Portabilité:
Exemple:
/*
Ce petit programme récupère la date système, affiche
l'intervalle de temps écoulé depuis le 1/1/70; il
affiche ensuite la date du jour au format anglo-saxon.
Une nouvelle date est calculéé de façon arbitraire, puis
difftime() est utilisée pour founir un intervalle entre
ces deux dates, en secondes et en jours.
*/
#include
#include
void main(void) {
time_t intps, int2;
double dd;
intps = time(NULL);
printf("Intervalle, en secondes depuis le 1/1/70: %ld", intps);
printf("\nDate et heure du jour: %s", ctime(&intps));
int2 = intps + 123456;
printf("\nNouvelle date %s", ctime(&int2));
dd=difftime(int2, intps);
printf("\nEntre les deux dates:\n difftime() = %lf en secondes", dd);
printf("\n ou converti en jours:%lf\n", dd/(24*60*60));
}