TIMEGM(3)

NOM
timegm, timelocal - Fonctions réciproques de gmtime et localtime

SYNOPSIS
#include <time.h>

time_t timelocal(struct tm *tm);

time_t timegm(struct tm *tm);

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

timelocal(), timegm() : _BSD_SOURCE || _SVID_SOURCE

DESCRIPTION
Les fonctions timelocal() et timegm() sont les réciproques de localtime(3) et gmtime(3).

CONFORMITÉ
Ces fonctions sont des extensions non standard de GNU qui sont également présentes sur les BSD. Évitez de les utiliser ; consultez la section NOTES.

NOTES
La fonction timelocal() est équivalente à la fonction standard POSIX mktime(3). Il n'y a aucune raison de l'utiliser.

Afin d'obtenir une version portable de timegm(), positionnez la variable d'environnement TZ à UTC, appelez mktime(3) et restaurez la valeur de TZ. Soit un code similaire à :
#include <time.h>
#include <stdlib.h>
time_t
mon_timegm(struct tm *tm)
{
    time_t ret;
    char *tz;
    tz = getenv("TZ");
    if (tz)
        tz = strdup(tz);
    setenv("TZ", "", 1);
    tzset();
    ret = mktime(tm);
    if (tz) {
        setenv("TZ", tz, 1);
        free(tz);
    } else
        unsetenv("TZ");
    tzset();
    return ret;
}

VOIR AUSSI
gmtime(3), localtime(3), mktime(3), tzset(3)

COLOPHON
Cette page fait partie de la publication 3.70 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

Stéphan Rafin (2002), Alain Portal <http://manpagesfr.free.fr/> (2006). Nicolas François et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».