MKTIME |
Fabriquer le temps |
---|---|
Langage C | time.h |
Syntaxe
time_t *mktime(struct tm *ptrheure) |
Paramètres
Nom | Description |
---|---|
ptrheure | Ce paramètre permet d'indiquer le temps à traiter |
Description
Cette fonction permet de convertir des heures locales en heures normalisé.
Exemple
Voici un exemple permettant de calculer le nombre de jours entre deux dates à l'aide de cette fonction :
Essayer maintenant !
- #include <stdio.h>
- #include <time.h>
-
- int GetNumberDaysBetween2Dates(char *date1, char *date2) {
- struct tm timestamp1,timestamp2;
- sscanf(date1,"%i-%i-%i",×tamp1.tm_year,×tamp1.tm_mon,×tamp1.tm_mday);
- sscanf(date2,"%i-%i-%i",×tamp2.tm_year,×tamp2.tm_mon,×tamp2.tm_mday);
- timestamp1.tm_sec = timestamp1.tm_min = timestamp1.tm_hour = timestamp1.tm_yday = timestamp1.tm_isdst = 0;
- timestamp1.tm_year -= 1900;
- timestamp1.tm_mon--;
- timestamp2.tm_sec = timestamp2.tm_min = timestamp2.tm_hour = timestamp2.tm_yday = timestamp2.tm_isdst = 0;
- timestamp2.tm_year -= 1900;
- timestamp2.tm_mon--;
- return abs(mktime(×tamp2) - mktime(×tamp1))/86400;
- }
-
- int main() {
- printf("2011-01-01 au 2011-12-31 = %i jours\n",GetNumberDaysBetween2Dates("2011-1-1","2011-12-31"));
- printf("2011-12-31 au 2011-01-01 = %i jours\n",GetNumberDaysBetween2Dates("2011-12-31","2011-1-1"));
- printf("2011-06-15 au 2011-08-01 = %i jours\n",GetNumberDaysBetween2Dates("2011-6-15","2011-8-01"));
- printf("2011-06-15 au 2011-06-19 = %i jours\n",GetNumberDaysBetween2Dates("2011-6-15","2011-6-19"));
- printf("2011-06-15 au 2011-06-16 = %i jours\n",GetNumberDaysBetween2Dates("2011-6-15","2011-6-16"));
- printf("2011-06-15 au 2011-06-15 = %i jours\n",GetNumberDaysBetween2Dates("2011-06-15","2011-06-15"));
- return 0;
- }
on obtiendra le résultat suivant :
2011-01-01 au 2011-12-31 =364 jours2011-12-31 au 2011-01-01 =364 jours
2011-06-15 au 2011-08-01 =47 jours
2011-06-15 au 2011-06-19 =4 jours
2011-06-15 au 2011-06-16 =1 jours
2011-06-15 au 2011-06-15 =0 jours
Voir également
Langage de programmation - C - Référence de procédures et fonctions - localtime
Langage de programmation - C - Référence de procédures et fonctions - time
Langage de programmation - C++ - Référence de procédures et fonctions - mktime
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 733.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 179.
Dernière mise à jour : Mardi, le 28 juillet 2015