Section courante

A propos

Section administrative du site

LOCALTIME

Temps local
Langage C time.h

Syntaxe

struct tm *localtime(const time_t *sec)

Paramètres

Nom Description
sec Ce paramètre permet d'indiquer les secondes

Description

Cette fonction permet de convertir des secondes en date et heure.

Algorithme

MODULE localtime(seconds_since_epoch)
   * Vérifie si l'entrée est valide
   SI seconds_since_epoch est NULL ALORS
      * Retourne NULL si l'entrée est invalide
      RETOURNE NULL
   FIN SI

   * Convertir les secondes en temps local
   utc_time ← convert_seconds_to_utc(seconds_since_epoch)   * Conversion en UTC
   local_offset ← get_timezone_offset()                     * Obtenir le décalage du fuseau horaire
   local_time ← utc_time + local_offset                     * Appliquer le décalage

   * Décomposer le temps local en une structure tm
   result ← new struct tm
   result.tm_sec ← local_time modulo 60                     * Secondes
   result.tm_min ← (local_time / 60) modulo 60              * Minutes
   result.tm_hour ← (local_time / 3600) modulo 24           * Heures
   result.tm_mday ← calculate_day_of_month(local_time)      * Jour du mois
   result.tm_mon ← calculate_month(local_time)              * Mois
   result.tm_year ← calculate_year(local_time)              * Année depuis 1900
   result.tm_wday ← calculate_weekday(local_time)           * Jour de la semaine
   result.tm_yday ← calculate_day_of_year(local_time)       * Jour de l'année
   result.tm_isdst ← check_daylight_saving(local_time)      * Heure d'été

   * Retourner la structure tm
   RETOURNE result

Remarques

Exemple

Voici un exemple montrant comment afficher la date courante :

Essayer maintenant !
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. int main()
  6. {
  7.     time_t seconds = time(NULL);
  8.     struct tm * timeinfo = localtime(&seconds);
  9.     printf("%04d-%02d-%02d %02d:%02d:%02d\n",1900+timeinfo->tm_year,timeinfo->tm_mon+1,timeinfo->tm_mday,timeinfo->tm_hour,timeinfo->tm_min,timeinfo->tm_sec);
  10.     return 0;
  11. }

on obtiendra le résultat suivant si l'heure courante est 8:24 du matin le 27 janvier 2009 :

2009-01-27 08:24:00

Voir également

Langage de programmation - C - Référence de procédures et fonctions - asctime
Langage de programmation - C - Référence de procédures et fonctions - ctime
Langage de programmation - C - Référence de procédures et fonctions - gmtime
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 - localtime

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 160.

Dernière mise à jour : Mardi, le 28 juillet 2015