[Actualités]
Microsoft envisage un nouveau modèle de tarification pour le Game Pass suite à...
[Actualités]
Des conditions météorologiques dynamiques arrivent dans TOUR DE FRANCE 2026
[Actualités]
Microsoft débloque le système de fichiers FAT32, instaurant la limite de 32 Go
[Actualités]
Intel prépare des iGPU puissants : Les cartes graphiques bon marché deviendron...
[Actualités]
Une bannière demandant l'acceptation des cookies, c'est une blague. On est touj...
[Actualités]
La console portable PlayStation 6 devrait offrir une rétrocompatibilité avec l...
[Actualités]
« La PlayStation 6 Lite est techniquement irréaliste et irréalisable. »
[Actualités]
YouTube va modifier sa stratégie de diffusion publicitaire. Les utilisateurs au...
[Actualités]
Test GreedFall : The Dying World (PS5) - Une suite réussie mais perfectible
[Actualités]
iOS 18.2 bêta 2 : Nouveautés exclusives à l’Europe et changements pour votr...
[Articles]
Unit4 accélère sur le sourcing digital avec Scanmarket et renforce son virage IA
[Articles]
GreedFall : The Dying World
[Articles]
Mario Tennis Fever
[Articles]
Le Tombeau de la Comète
[Articles]
Kids on the Slope tome 1
[Articles]
Life Is Strange: Reunion
[Articles]
L'Apprenti de Lord Magear tome 1
[Articles]
Screamer
[Articles]
Avant-première ESET : nouvelles fonctionnalités de sécurité IA pour communic...
[Articles]
Silly Symphonies
Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion
Actualités
Lettre d'information
Proposer une actualité
Archives
Actualités
Articles
Programmation
Press Release
Matériel
Logiciels
Livres
Interviews
Derniers commentaires
Jeux Vidéos
XBox One
XBox 360
Wii U
PSP
PS4
PS3
PC
DS
GameCube
3DS
Forum
Derniers messages
Informatique
Fun
Divers
Logithèque
Blogs
Divers
A Propos
Annonceurs
Contact
Recherche
RSS
Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion
Editer un article
Titre
Mots Clés
Texte
[size=18] [b]Nom[/b] [/size] ctime, asctime, gmtime, localtime, mktime - Conversions de dates et heures binaires en ASCII. [size=18] [b]Résumé[/b] [/size] .nf [b]#include
[/b] [b][i]char *asctime (const struct tm * tm );[/i][/b] [b][i]char *asctime_r (const struct tm * tm , char * buf );[/i][/b] [b][i]char *ctime (const time_t * timep );[/i][/b] [b][i]char *ctime_r (const time_t * timep , char * buf );[/i][/b] [b][i]struct tm *gmtime (const time_t * timep );[/i][/b] [b][i]struct tm *gmtime_r (const time_t * timep , struct tm * result );[/i][/b] [b][i]struct tm *localtime (const time_t * timep );[/i][/b] [b][i]struct tm *localtime_r (const time_t * timep , struct tm * result );[/i][/b] [b][i]time_t mktime (struct tm * tm );[/i][/b] .fi [size=18] [b]Description[/b] [/size] Les fonctions [b]ctime()[/b], [b]gmtime()[/b] et [b]localtime()[/b] prennent toutes un argument de type [i]time_t[/i] qui représente une date. Si l'on interprète cet argument comme une valeur absolue, il s'agit du nombre de secondes écoulées depuis le 1er Janvier 1970 à 00h 00m 00s en Temps Universel (TU). Les fonctions [b]asctime()[/b] et [b]mktime()[/b] utilisent toutes deux un argument de type [i]struct[/i] tm, c'est à dire une représentation binaire divisée en année, mois, jour, heure... Cette structure [i]tm[/i] est définie dans [i]
[/i] ainsi : [table][row][col] [/col][col] .nf .ne 11 .ta 8n 16n 32n struct tm { int tm_sec; /* secondes */ int tm_min; /* minutes */ int tm_hour; /* heures */ int tm_mday; /* quantième du mois */ int tm_mon; /* mois (0 à 11 !) */ int tm_year; /* année */ int tm_wday; /* jour de la semaine */ int tm_yday; /* jour de l'année */ int tm_isdst; /* décalage horaire */ }; .ta .fi[/col][/row][/table] Les membres de la structure [i]tm[/i] sont : [i]tm_sec[/i] [table][row][col] [/col][col]Le nombre de secondes écoulées depuis le dernier changement de minute. Normalement dans l'intervalle 0 à 59, ce membre peut aller jusqu'à 61 durant les secondes de rattrapage périodique.[/col][/row][/table] [i]tm_min[/i] [table][row][col] [/col][col]Le nombre de minutes écoulées depuis le dernier changement d'heure, dans l'intervalle 0 à 59.[/col][/row][/table] [i]tm_hour[/i] [table][row][col] [/col][col]Le nombre d'heures écoulées depuis Minuit, dans l'intervalle 0 à 23.[/col][/row][/table] [i]tm_mday[/i] [table][row][col] [/col][col]Le quantième du mois, dans l'intervalle 1 à 31.[/col][/row][/table] [i]tm_mon[/i] [table][row][col] [/col][col]Le nombre de mois écoulés depuis le début de l'année, dans l'intervalle 0 à 11.[/col][/row][/table] [i]tm_year[/i] [table][row][col] [/col][col]Le nombre d'années écoulées depuis 1900.[/col][/row][/table] [i]tm_wday[/i] [table][row][col] [/col][col]Le nombre de jours écoulés depuis Dimanche, dans l'intervalle 0 à 6.[/col][/row][/table] [i]tm_yday[/i] [table][row][col] [/col][col]Le nombre de jours écoulés depuis le 1er Janvier, dans l'intervalle 0 à 365 (0 à 364 si l'année n'est pas bissextile).[/col][/row][/table] [i]tm_isdst[/i] [table][row][col] [/col][col]Un drapeau indiquant si le décalage d'heure hiver/éte est en cours au moment de l'appel. La valeur retournée est positive si le décalage est en fonction, nulle s'il ne l'est pas, et négative si l'information n'est pas disponible.[/col][/row][/table] L'appel [b][i]ctime( t )[/i][/b] est équivalent à [b][i]asctime(localtime( t)) .[/i][/b] Il convertit la date [i]t[/i] en une chaîne de caractères de le forme [table][row][col] [/col][col] "Wed Jun 30 21:49:08 1993 "[/col][/row][/table] L'internationalisation de la date est possible en utilisant la fonction [b]setlocale[/b](3) et [b]strftime[/b](3). Les abréviations pour les jours de la semaine sont `Sun', `Mon', `Tue', `Wed', `Thu', `Fri', et `Sat'. les abréviations pour les mois sont `Jan', `Feb', `Mar', `Apr', `May', `Jun', `Jul', `Aug', `Sep', `Oct', `Nov', et `Dec'. La valeur renvoyée pointe sur une chaîne statique qui sera écrasée à chaque appel de l'une des fonctions ci-dessus. La fonction renseigne également la variable externe [i]tzname[/i] avec les informations concernant le fuseau horaire (voir [b]tzset (3)).[/b] La version réentrante [b]ctime_r()[/b] effectue le même travail mais stocke la chaîne dans un buffer fourni par l'appelant, d'une longueur minimale de 26 caractères. Elle ne renseigne pas nécessairement [i]tzname[/i]. la fonction [b]gmtime()[/b] convertit la date [i]timep[/i] en une représentation [b]struct[/b] tm exprimée en Temps Universel. 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 peut être écrasée par une invocation ultérieure d'une fonction de date ou d'heure. La fonction réentrante [b]gmtime_r()[/b] effectue le même travail mais stocke le résultat dans une structure fournie par l'appelant. La fonction [b]localtime()[/b] convertit la date [i]timep[/i] en une représentation [b]struct[/b] tm exprimée en fonction du fuseau horaire de l'utilisateur. Cette fonction se comporte comme si elle appelait [b]tzset (3)[/b] et renseigne les variables externes [i]tzname[/i] avec les informations concernant le fuseau horaire, [i]timezone[/i] avec la différence (en secondes) entre Temps Universel et Temps Local, et [i]daylight[/i] avec une valeur non-nulle si le décalage horaire saisonnier s'applique. La valeur renvoyée pointe vers une structure allouée statiquement qui peut être écrasée par une invocation ultérieure d'une fonction de date ou d'heure. La fonction réentrante [b]localtime_r()[/b] effectue le même travail mais stocke le résultat dans une structure fournie par l'appelant. La fonction [b]asctime()[/b] convertit la date [i]tm[/i] exprimée sous forme [b]struct[/b] tm en une chaîne de caractères du même format que [b]ctime()[/b]. La valeur renvoyée pointe sur une chaîne statique qui sera écrasée à chaque appel de l'une des fonctions ci-dessus. La version réentrante [b]asctime_r()[/b] effectue le même travail mais stocke la chaîne dans un buffer fourni par l'appelant, d'une longueur minimale de 26 caractères. La fonction [b]mktime()[/b] convertit la date [i]timeptr[/i] exprimée sous forme [b]struct[/b] tm en une date locale sous forme [b]time_t[/b]. La fonction ignore les valeurs transmises des membres [i]tm_wday[/i] et [i]tm_yday[/i] de la structure, et les recalcule en utilisant les autres membres. Si des membres de la structure débordent de l'intervalle autorisé, ils seront corrigés (par exemple le 40 Octobre devient le 9 Novembre). L'appel de [b]mktime()[/b] renseigne également la variable externe [i]tzname[/i] avec les informations concernant le fuseau horaire. Si la structure transmise ne peut pas être convertie, [b]mktime()[/b] renvoie la valeur (time_t)(-1) et ne modifie pas les membres [i]tm_wday[/i] et [i]tm_yday[/i]. [size=18] [b]Valeur renvoyée[/b] [/size] Chacune de ces fonctions renvoie la valeur décrite plus haut, ou NULL (-1 dans le cas de [b]mktime()[/b]) si une erreur est détectée. [size=18] [b]Notes[/b] [/size] Les quatre fonctions [b]asctime() ,[/b] [b]ctime() ,[/b] [b]gmtime()[/b] et [b]localtime()[/b] renvoient un pointeur vers des données statiques et ne sont donc pas sûres dans un contexte multi-threads. Les versions réentrantes [b]asctime_r() ,[/b] [b]ctime_r() ,[/b] [b]gmtime_r()[/b] et [b]localtime_r()[/b] sont mentionnées dans SUSv2, et disponibles depuis la libc 5.2.5. La version GlibC de la struct tm a des champs supplémentaires : [table][row][col] [/col][col] .nf long tm_gmtoff; /* Secondes vers l'Est du temps TU */ const char *tm_tm_zone; /* Abréviation du nom de fuseau */ .fi[/col][/row][/table] présents quand _BSD_SOURCE est défini avant l'inclusion de [b]
.[/b] Ceci est une extension BSD, présente dans 4.3BSD-Reno. [size=18] [b]Conformité[/b] [/size] SVID 3, POSIX, BSD 4.3, ISO 9899 [size=18] [b]Voir aussi[/b] [/size] [b]date (1),[/b] [b]gettimeofday (2),[/b] [b]newctime (3),[/b] [b]time (2),[/b] [b]utime (2),[/b] [b]clock (2),[/b] [b]difftime (3),[/b] [b]strftime (3),[/b] [b]strptime (3),[/b] [b]tzset (3),[/b] [size=18] [b]Traduction[/b] [/size] Christophe Blaess, 1996-2003.
Fichier
Newsletter
Recevez les dernières actualités tech directement dans votre boîte mail.
S'inscrire
Forum
-
Derniers messages
Bavardages
Aujourd'hui, je rénove ou je construis ^^
Bavardages
Séries TV, vous regardez quoi?
Informations
Besoin d’avis sur l’UX de mon mini-projet web (et plus globalement sur ce qui vous rebute sur un site) ?
Software
problème sur windows 10
Réseaux et Télécom
Problème wifi (POE)
Software
Postfix - Need help
Bavardages
Oh râge oh désespoir !
Programmation
Enregistrement client et envoi mail
Software
SÉCURITÉ MACBOOK
Hardware
conseil matos réseau?
Actualités
-
Archives
Jeux Vidéos
15-04
Microsoft envisage un nouveau modèle de tarification pour le Game Pass suite à l'augmentation de prix
Jeux Vidéos
15-04
Des conditions météorologiques dynamiques arrivent dans TOUR DE FRANCE 2026
Windows
15-04
Microsoft débloque le système de fichiers FAT32, instaurant la limite de 32 Go
Intel
15-04
Intel prépare des iGPU puissants : Les cartes graphiques bon marché deviendront-elles obsolètes ?
Internet
15-04
Une bannière demandant l'acceptation des cookies, c'est une blague. On est toujours suivis à la trace.
Ada
CSS
Cobol
CPP
HTML
Fortran
Java
JavaScript
Pascal
Perl
PHP
Python
SQL
VB
XML
Anon URL
DailyMotion
eBay
Flickr
FLV
Google Video
Google Maps
Metacafe
MP3
SeeqPod
Veoh
Yahoo Video
YouTube
6px
8px
10px
12px
14px
16px
18px
Informaticien.be
- © 2002-2026
Akretio
SRL - Generated via
Kelare
Haut de page