localtime() : conversion de temps, de durée en date+heure
gmtime() : conversion de temps, de durée en date+heure
Prototype:
- struct tm * localtime( const time_t * pdur);
- struct tm * gmtime( const time_t * pdur);
dans: <time.h>
Description:
Conversion d'une durée ou intervalle de temps mesuré en secondes, en date et heure correspondant à la date locale pour localtime, ou à l'heure de Greenwich pour gmtime().
Le résultat est codé en mémoire statique dans un agrégat 'struct tm', dont l'adresse est fournie.
Cet agrégat contient l'heure, la date, le jour dans la semaine ainsi que le quantième dans l'année.
La déclaration de l'agrégat 'struct tm' figure plus bas.
Valeur renvoyée:
l'adresse d'un agrégat en mémoire statique contenant l'heure et la date.
La même zone est utilisée à chaque appel à localtime() ou à gmtime().
Voir aussi:
Portabilité:
Exemple:
/*
Ce petit programme construit la date du jour et l'affiche
au format francophone.
Les champs de l'agrégat 'struct tm' sont:
struct tm {
int tm_sec; /* secondes */
int tm_min; /* minutes ( 0 -> 59 ) */
int tm_hour; /* heure (0 -> 23 ) */
int tm_mday; /* jour du mois (1 -> 31) */
int tm_mon; /* mois ( 0 -> 11 ) */
int tm_year; /* annee ( 1970 -> présent ) */
int tm_wday; /* jour de la semaine ( di:0 -> sa:6 ) */
int tm_yday; /* jour de l'année (1/1:0 -> 31/12:364) */
int tm_isdst; /* lié à 'daylight saving time'
-1 si sans objet; 1 si horaire d'été, 0 sinon */
};
*/
#include
#include
void main(void) {
struct tm * pdh; time_t intps; int nbc;
static char *jour[]={"Dim","Lun","Mar","Mer","Jeu","Ven","Sam"};
static char * mois[]={"Janv","Févr","Mars","Avri","Mai ","Juin",
"Juil","Aout","Sept","Octo","Nove","Déce"};
intps=time(NULL); pdh = localtime(&intps);
printf( "ajourd'hui: %s %d %s %d\n",
jour[pdh->tm_wday], /* jour de la semaine */
pdh->tm_mday, /* jour du mois, en chiffres */
mois[pdh->tm_mon], /* mois */
1900+pdh->tm_year); /* année */
}