Section courante

A propos

Section administrative du site

ASCTIME

Heure ASCII
Langage C time.h

Syntaxe

char *asctime(struct tm *h)

Paramètres

Nom Description
h Ce paramètre permet d'indiquer la structure contenant les informations de temps à traiter :
Nom Type de données Description
tm_sec int Ce champ permet d'indiquer les secondes, soit une valeur entre l'intervalle 0 et 61.
tm_min int Ce champ permet d'indiquer les minutes, soit une valeur entre l'intervalle 0 et 59.
tm_hour int Ce champ permet d'indiquer les heures, soit une valeur entre l'intervalle 0 et 23.
tm_mday int Ce champ permet d'indiquer le jour du mois, soit une valeur entre l'intervalle 1 et 31.
tm_mon int Ce champ permet d'indiquer le mois de l'année :
Valeur Description
0 Cette valeur permet d'indiquer le mois de Janvier.
1 Cette valeur permet d'indiquer le mois de Février.
2 Cette valeur permet d'indiquer le mois de Mars.
3 Cette valeur permet d'indiquer le mois d'Avril.
4 Cette valeur permet d'indiquer le mois de Mai.
5 Cette valeur permet d'indiquer le mois de Juin.
6 Cette valeur permet d'indiquer le mois de Juillet.
7 Cette valeur permet d'indiquer le mois d'Août.
8 Cette valeur permet d'indiquer le mois de Septembre.
9 Cette valeur permet d'indiquer le mois d'Octobre.
10 Cette valeur permet d'indiquer le mois de Novembre.
11 Cette valeur permet d'indiquer le mois de Décembre.
tm_year int Ce champ permet d'indiquer l'année après 1900.
tm_wday int Ce champ permet d'indiquer le jour de la semaine :
Valeur Description
0 Cette valeur permet d'indiquer le Dimanche.
1 Cette valeur permet d'indiquer le Lundi.
2 Cette valeur permet d'indiquer le Mardi.
3 Cette valeur permet d'indiquer le Mercredi.
4 Cette valeur permet d'indiquer le Jeudi.
5 Cette valeur permet d'indiquer le Vendredi.
6 Cette valeur permet d'indiquer le Samedi.
tm_yday int Ce champ permet d'indiquer le jour de l'année, soit une valeur entre l'intervalle 0 et 365.
tm_isdst int Ce champ permet d'indiquer le jour d'été ou avancé.

Retour

Valeur Description
chaine de caractères Ces valeurs permettent d'indiquer un format d'heure lisible par humain de format «Www Mmm dd hh:mm:ss yyyy». Voici la signification des abréviations :
Abréviation Description
Www Cette abréviation permet d'indiquer les 3 premières du jour de semaine en anglais.
Mmm Cette abréviation permet d'indiquer les 3 premières lettres du mois en anglais.
dd Cette abréviation permet d'indiquer le jour du mois.
hh Cette abréviation permet d'indiquer l'heure de la journée.
mm Cette abréviation permet d'indiquer les minutes de l'heure.
ss Cette abréviation permet d'indiquer les secondes d'une minute d'une heure.
yyy Cette abréviation permet d'indiquer l'année.

Description

Cette fonction permet de convertir l'heure en chaîne de caractères.

Algorithme

* Entrée : Structure tm avec les champs tm_sec, tm_min, tm_hour, tm_mday, tm_mon, tm_year, tm_wday
* Sortie : Chaîne de caractères représentant la date et l'heure au format "Www Mmm dd hh:mm:ss yyyy\n"

MODULE ASCTIME(tm)
   * Tableaux pour les noms des jours et des mois
   jours_semaine ← ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
   mois_annee ← ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]

   * Créer une chaîne de caractères de sortie pour entreposer le résultat
   chaîne_sortie ← chaîne vide de longueur suffisante (au moins 26 caractères)

   * Construire la chaîne de caractères avec le format spécifié
   chaîne_sortie ← sprintf("%s %s %02d %02d:%02d:%02d %d\n",jours_semaine[tm.tm_wday],mois_annee[tm.tm_mon],tm.tm_mday,tm.tm_hour,tm.tm_min,tm.tm_sec,tm.tm_year + 1900)

   * Retourner la chaîne de caractères de sortie
   RETOURNE chaîne_sortie

Remarques

Exemple

Voici un exemple montrant le résultat d'une date du 1er janvier 1970 :

Essayer maintenant !
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. int main()
  6. {
  7.     struct tm timeinfo;
  8.     timeinfo.tm_sec = 59;
  9.     timeinfo.tm_min = 59;
  10.     timeinfo.tm_hour = 23;
  11.     timeinfo.tm_mday = 1;
  12.     timeinfo.tm_mon = 1;
  13.     timeinfo.tm_year = 70;
  14.     timeinfo.tm_wday = 0;
  15.     timeinfo.tm_yday  = 0;
  16.     timeinfo.tm_isdst = 0;
  17.     printf("La date et l'heure : %s\n",asctime(&timeinfo));
  18.     return 0;
  19. }

on obtiendra le résultat suivant :

La date et l'heure : Sun Feb 01 23:59:59 1970

Voir également

Langage de programmation - C - Référence procédures et fonctions - difftime
Langage de programmation - C - Référence procédures et fonctions - localtime
Langage de programmation - C - Référence procédures et fonctions - mktime
Langage de programmation - C - Référence procédures et fonctions - time
Langage de programmation - C++ - Référence procédures et fonctions - asctime
Langage de programmation - C pour Linux - Référence procédures et fonctions - asctime
Langage de programmation - Perl - Référence des modules - POSIX::ASCTIME

Références

Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 730.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 30.

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