Provided by: manpages-fr-dev_4.19.0-7_all bug

NOM

       asctime,  ctime,  gmtime,  localtime,  mktime, asctime_r, ctime_r, gmtime_r, localtime_r -
       Convertir des dates et des temps au format année/mois/jour ou au format ASCII

BIBLIOTHÈQUE

       Bibliothèque C standard (libc, -lc)

SYNOPSIS

       #include <time.h>

       char *asctime(const struct tm *tm);
       char *asctime_r(const struct tm *restrict tm,
                           char tampon[restrict 26]);

       char *ctime(const time_t *timep);
       char *ctime_r(const time_t *restrict timep,
                           char tampon[restrict 26]);

       struct tm *gmtime(const time_t *timep);
       struct tm *gmtime_r(const time_t *restrict timep,
                           struct tm *restrict résultat);

       struct tm *localtime(const time_t *timep);
       struct tm *localtime_r(const time_t *restrict timep,
                           struct tm *restrict résultat);

       time_t mktime(struct tm *tm);

   Exigences   de   macros   de   test   de   fonctionnalités   pour    la    glibc    (consulter
   feature_test_macros(7)) :

       asctime_r(), ctime_r(), gmtime_r(), localtime_r() :
           _POSIX_C_SOURCE
               || /* glibc <= 2.19 : */ _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION

       Les fonctions ctime(), gmtime() et localtime() prennent toutes un paramètre de type time_t
       qui représente un temps en secondes. Si l'on interprète  ce  paramètre  comme  une  valeur
       absolue,  il s'agit du nombre de secondes écoulées depuis l'époque POSIX, 1er janvier 1970
       à 00:00:00 (UTC).

       Les fonctions asctime() et mktime() utilisent toutes deux  un  paramètre  représentant  le
       temps dans un format humain, c'est-à-dire année, mois, jour, etc.

       La  représentation humaine (« broken-down time ») est stockée dans la structure tm décrite
       dans tm(3type).

       L'appel ctime(t) est équivalent à asctime(localtime(t)). Il convertit le temps  calendaire
       t en une chaîne de caractères, terminée par un octet NULL de la forme

           "Wed Jun 30 21:49:08 1993\n"

       Les abréviations des jours de la semaine sont « Sun », « Mon », « Tue », « Wed », « Thu »,
       « Fri » et « Sat ». Les abréviations des mois sont  « Jan »,  « Feb »,  « Mar »,  « Apr »,
       « May »,  « Jun »,  « Jul »,  « Aug »,  « Sep »,  « Oct »,  « Nov »  et « Dec ». La valeur
       renvoyée pointe sur une chaîne statiquement  allouée  qui  sera  écrasée  à  chaque  appel
       ultérieur  d'une  fonction  de  date  ou de temps. La fonction définit aussi les variables
       externes tzname, timezone et daylight (consultez tzset(3)) avec les informations du fuseau
       horaire.  La  version réentrante ctime_r() effectue le même travail, mais stocke la chaîne
       dans un tampon d'une longueur minimale de 26 caractères fourni par l'utilisateur. Elle n'a
       pas besoin de définir tzname, timezone et daylight.

       La  fonction  gmtime()  convertit  le temps calendaire timep en une représentation humaine
       exprimée en temps universel (UTC). Elle peut renvoyer NULL quand l'année ne tient pas dans
       un  entier.  La  valeur  renvoyée  pointe vers une structure allouée statiquement qui sera
       écrasée à chaque appel  ultérieur  d'une  fonction  de  date  ou  de  temps.  La  fonction
       réentrante gmtime_r() effectue le même travail, mais stocke le résultat dans une structure
       fournie par l'utilisateur.

       La fonction localtime() convertit le temps calendaire timep en une représentation  humaine
       exprimée  en fonction du fuseau horaire de l'utilisateur. Cette fonction se comporte comme
       si elle appelait tzset(3) et définit les variables externes tzname avec  les  informations
       concernant  le  fuseau  horaire,  timezone avec la différence (en secondes) entre le temps
       universel (UTC) et le temps local et daylight avec une valeur non  nulle  si  le  décalage
       horaire  saisonnier  s'applique  pendant  une partie de l'année. La valeur renvoyée pointe
       vers une structure allouée statiquement qui sera écrasée à chaque  appel  ultérieur  d'une
       fonction  de  date  ou  de  temps.  La  fonction réentrante localtime_r() effectue le même
       travail, mais stocke le résultat dans une structure fournie par  l'utilisateur.  Elle  n'a
       pas besoin de définir tzname, timezone, et daylight.

       La  fonction  asctime() convertit une date au format humain tm en une chaîne de caractères
       terminée par un octet NULL dans le même format que ctime(). La valeur renvoyée pointe  sur
       une  chaîne allouée statiquement qui sera écrasée à chaque appel d'une fonction de date et
       de temps. La version réentrante asctime_r() effectue  le  même  travail,  mais  stocke  la
       chaîne dans un tampon d'une longueur minimale de 26 caractères fourni par l'utilisateur.

       La fonction mktime() convertit une structure de temps au format humain exprimée sous forme
       d'un temps local en une représentation de temps calendaire. La fonction ignore les valeurs
       tm_wday  et  tm_yday  fournies  par  l'appelant.  La valeur fournie dans le champ tm_isdst
       indique à mktime() si le décalage horaire d'été (DST) est pris en  compte  dans  le  temps
       fourni  dans  la structure tm : une valeur positive signifie que le décalage horaire d'été
       est effectif ; la valeur zéro signifie que le décalage horaire d'été n'est pas  effectif ;
       une valeur négative signifie que mktime() doit déterminer si le décalage horaire d'été est
       effectif dans le temps spécifié (en utilisant les informations de fuseaux horaires et  les
       bases de données du système).

       La  fonction  mktime()  modifie  des champs de la structure tm comme suit : les valeurs de
       tm_wday et tm_yday sont déterminées à partir des valeurs des autres champs ; si la  valeur
       d'un  membre  de  la structure n'est pas dans un intervalle autorisé, elle sera normalisée
       (par  exemple,  le  40 octobre  sera  converti  en  9 novembre) ;  tm_isdst   est   défini
       (indépendamment  de sa valeur initiale) à une valeur positive si le décalage horaire d'été
       est effectif dans le temps spécifié, 0  sinon.  Un  appel  à  mktime()  définit  aussi  la
       variable externe tzname avec le fuseau horaire actuel.

       Si  la  représentation  du  temps  au format humain spécifié ne peut pas être convertie au
       format calendaire (nombre de secondes depuis l'époque POSIX, 1er janvier 1970  à  00:00:00
       (UTC)),  mktime()  renvoie  la  valeur  (time_t) -1  et  ne  modifie pas les membres de la
       structure du temps au format humain.

VALEUR RENVOYÉE

       S'ils réussissent, les appels gmtime()  et  localtime()  renvoient  un  pointeur  sur  une
       struct tm.

       S'ils  réussissent,  les  appels  gmtime_r()  et  localtime_r()  renvoient l'adresse de la
       structure pointée par résultat.

       S'ils réussissent, les appels asctime() et ctime() renvoient un pointeur sur une chaîne.

       S'ils réussissent, les appels asctime_r() et ctime_r() renvoient un pointeur sur la chaîne
       pointée par tampon.

       S'il  réussit,  l'appel  mktime()  renvoie  le temps calendaire (nombre de secondes depuis
       l'époque POSIX, 1er janvier 1970 à 00:00:00 (UTC)) exprimé sous la forme d'une  valeur  de
       type time_t.

       En  cas  d'erreur,  errno  est  définie  pour  indiquer  l'erreur  et toutes les fonctions
       renvoient NULL, sauf mktime() qui renvoie la valeur (time_t) -1.

ERREURS

       EOVERFLOW
              Le résultat ne peut pas être représenté.

ATTRIBUTS

       Pour une explication des termes utilisés dans cette section, consulter attributes(7).

       ┌────────────────────────┬──────────────────────┬─────────────────────────────────────────┐
       │InterfaceAttributValeur                                  │
       ├────────────────────────┼──────────────────────┼─────────────────────────────────────────┤
       │asctime()               │ Sécurité des threads │ MT-Unsafe race:asctime locale           │
       ├────────────────────────┼──────────────────────┼─────────────────────────────────────────┤
       │asctime_r()             │ Sécurité des threads │ MT-Safe locale                          │
       ├────────────────────────┼──────────────────────┼─────────────────────────────────────────┤
       │ctime()                 │ Sécurité des threads │ MT-Unsafe race:tmbuf race:asctime env   │
       │                        │                      │ locale                                  │
       ├────────────────────────┼──────────────────────┼─────────────────────────────────────────┤
       │ctime_r(), gmtime_r(),  │ Sécurité des threads │ MT-Safe env locale                      │
       │localtime_r(), mktime() │                      │                                         │
       ├────────────────────────┼──────────────────────┼─────────────────────────────────────────┤
       │gmtime(), localtime()   │ Sécurité des threads │ MT-Unsafe race:tmbuf env locale         │
       └────────────────────────┴──────────────────────┴─────────────────────────────────────────┘

STANDARDS

       POSIX.1-2001. C99 définissent  asctime(),  ctime(),  gmtime(),  localtime()  et  mktime().
       POSIX.1-2008  marque asctime(), asctime_r(), ctime() et ctime_r() comme étant obsolètes et
       recommande à la place l'utilisation de strftime(3).

       POSIX ne préconise pas restrict pour les paramètres de ctime_r() ; cela est  spécifique  à
       la glibc.

NOTES

       Les  quatre  fonctions  asctime(),  ctime(), gmtime() et localtime() renvoient un pointeur
       vers des données statiques et ne sont donc pas sûres dans  un  contexte  multithread.  Les
       versions  sûres  dans  un  contexte  multithread,  asctime_r(),  ctime_r(),  gmtime_r() et
       localtime_r() sont spécifiées dans SUSv2.

       POSIX.1-2001  indique :  « Les  fonctions  asctime(),  ctime(),  gmtime()  et  localtime()
       retourneront  les  valeurs dans l'un de ces deux objets statiques : une structure de temps
       au format humain et un tableau de type char. L'exécution  de  n'importe  laquelle  de  ces
       fonctions  peut  écraser  l'information  renvoyée  dans  l'un ou l'autre de ces objets par
       n'importe quelle autre fonction ». Cela peut arriver dans l'implémentation de la glibc.

       Dans beaucoup d'implémentations, dont la glibc, un 0 dans tm_mday est interprété comme  le
       dernier jour du mois précédent.

       Selon  POSIX.1-2001,  localtime()  doit  se comporter comme si tzset(3) avait été appelée,
       alors que localtime_r() n'est pas  soumise  à  cette  exigence.  Pour  un  code  portable,
       tzset(3) doit être appelée avant localtime_r().

VOIR AUSSI

       date(1),   gettimeofday(2),   time(2),   utime(2),   clock(3),  difftime(3),  strftime(3),
       strptime(3), timegm(3), tzset(3), time(7)

TRADUCTION

       La traduction française de cette  page  de  manuel  a  été  créée  par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,  Stéphan  Rafin  <stephan.rafin@laposte.net>, Thierry
       Vignaud <tvignaud@mandriva.com>, François Micaux, Alain  Portal  <aportal@univ-montp2.fr>,
       Jean-Philippe    Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-
       luc.coulon@wanadoo.fr>,   Julien    Cristau    <jcristau@debian.org>,    Thomas    Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>,  Denis
       Barbier   <barbier@debian.org>,   David   Prévot   <david@tilapin.org>  et  Lucien  Gentis
       <lucien.gentis@waika9.com>

       Cette traduction est une documentation libre ; veuillez vous reporter  à  la  GNU  General
       Public   License   version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  concernant  les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.