sourCEntral - mobile manpages

pdf

times

NOM

time - donner l’heure en secondes

BIBLIOTHÈQUE

Bibliothèque C standard (libc, -lc)

SYNOPSIS

#include <time.h>

time_t time(time_t *_Nullable tloc);

DESCRIPTION

time() renvoie la date sous la forme du nombre de secondes depuis l’époque POSIX (Epoch), 1er janvier 1970 à 00:00:00 (UTC).

Si tloc n’est pas NULL, le code de retour est également stockée dans la structure de mémoire vers laquelle il pointe.

VALEUR RENVOYÉE

S’il réussit, l’appel time renvoie le nombre de secondes écoulées depuis l’époque POSIX. S’il échoue, la valeur ((time_t) -1) est renvoyée, et errno est défini pour préciser l’erreur.

ERREURS

EFAULT

tloc pointe en dehors de l’espace d’adressage qui vous est accessible (mais voir BOGUES).

Sur des systèmes où la fonction enveloppe time() de la bibliothèque C appelle une implémentation fournie par vdso(7) (pour ne pas créer de faille dans le noyau), une adresse non valable peut alors provoquer un signal SIGSEGV.

STANDARDS

SVr4, 4.3BSD, C99, POSIX.1-2001. POSIX ne précise pas de condition d’erreur.

NOTES

POSIX.1 définit le nombre de secondes écoulées depuis l’époque POSIX grâce à une formule qui est une approximation du nombre de secondes entre une date spécifiée et l’époque. Cette formule prend en compte le fait que les années divisibles par 4 sont bissextiles, sauf les années qui sont divisibles par 100 mais pas par 400. Cette valeur ne correspond donc pas toujours au véritable nombre de secondes écoulées depuis l’époque, à cause des secondes intercalaires et parce que les horloges système ne sont pas forcément synchronisées avec une référence standard. Cependant elle reste cohérente au cours du temps. Consultez l’explication A.4.15 de POSIX.1-2008 pour plus de détails.

Sur Linux, un appel à time() où tloc vaut NULL ne peut pas échouer avec l’erreur EOVERFLOW, même sur des ABI où time_t est un entier 32 bits signé et où les tics de l’horloge atteignent ou dépassent 2**31 secondes (2038-01-19 03:14:08 UTC, en ignorant les secondes intercalaires). (POSIX.1 permet mais n’exige pas l’erreur EOVERFLOW si les secondes depuis Epoch ne tiennent pas dans time_t). Au contraire, le comportement sur Linux n’est pas défini quand l’heure du système dépasse la plage time_t. Les applications conçues pour fonctionner après 2038 devraient utiliser des ABI avec un time_t plus grand que 32 bits.

BOGUES

Les codes de retour d’erreur de cet appel système sont indistincts des retours lorsque l’appel réussit mais que le temps est de quelques secondes avant Epoch, donc la fonction enveloppe de la bibliothèque C ne positionne jamais errno à la fin de cet appel.

Le paramètre tloc est obsolète et devrait toujours être NULL dans du code nouveau. Quand tloc est NULL, l’appel ne peut pas échouer.

différences entre bibliothèque C et noyau
Sur certaines architectures, une implémentation de time() est fournie dans le vdso(7).

VOIR AUSSI

date(1), gettimeofday(2), ctime(3), ftime(3), time(7), vdso(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 DOT rafin AT laposte DOT net>, Thierry Vignaud <tvignaud AT mandriva DOT com>, François Micaux, Alain Portal <aportal AT univ-montp2 DOT fr>, Jean-Philippe Guérard <fevrier AT tigreraye DOT org>, Jean-Luc Coulon (f5ibh) <jean-luc DOT coulon AT wanadoo DOT fr>, Julien Cristau <jcristau AT debian DOT org>, Thomas Huriaux <thomas DOT huriaux AT gmail DOT com>, Nicolas François <nicolas DOT francois AT centraliens DOT net>, Florentin Duneau <fduneau AT gmail DOT com>, Simon Paillard <simon DOT paillard AT resel DOT enst-bretagne DOT fr>, Denis Barbier <barbier AT debian DOT org>, David Prévot <david AT tilapin DOT org> et Jean-Philippe MENGUAL <jpmengual AT debian DOT org>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 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.

pdf