CTIME |
Conversion de l'heure |
---|---|
Langage C++ | ctime (time.h) |
Syntaxe
char *ctime(const time_h *h); |
Paramètres
Nom | Description |
---|---|
h | Ce paramètre permet d'indiquer l'heure |
Description
Cette fonction permet de convertir une heure sous forme de chaîne de caractères.
Remarques
- La fonction ctime() renvoie un pointeur sur une chaîne de le format suivante :
- Le tampon utilisé par la fonction ctime() pour contenir la chaîne de caractères de sortie formatée est un tableau de caractères alloué statiquement et est écrasé à chaque appel de la fonction. Si vous souhaitez enregistrer le contenu de la chaîne de caractères, il est nécessaire de la copier ailleurs.
- Définition et utilité : La fonction ctime est utilisée pour convertir un objet de type time_t, représentant un instant de temps depuis l'époque (1er janvier 1970, UTC), en une chaîne de caractères représentant l'heure et la date dans un format lisible par l'utilisateur. Elle fait partie de la bibliothèque <ctime> et est couramment utilisée pour afficher des informations temporelles dans des programmes.
- Retours sur la représentation du temps : La fonction ctime est principalement utilisée pour afficher un instant de temps à partir de sa représentation time_t. La structure de time_t est généralement un nombre entier qui représente le nombre de secondes écoulées depuis le 1er janvier 1970. Cela permet d'obtenir des informations temporelles qui ne sont pas directement liées à un fuseau horaire, mais à l'heure UTC.
- Problèmes de réentrance : La fonction ctime renvoie un pointeur vers une chaîne de caractères statique, ce qui signifie que cette chaîne est partagée entre plusieurs appels à ctime. Par conséquent, si ctime est appelée plusieurs fois dans un même programme de manière simultanée (par exemple, dans des processus légers différents), cela peut entraîner un comportement indéfini ou des résultats inattendus. Pour éviter cela, des fonctions comme localtime ou strftime peuvent être préférées dans des environnements multi-processus légers.
- Limitations du format : Le format de la chaîne renvoyée par ctime est très simple, mais il peut ne pas être suffisant dans certains cas où un formatage plus spécifique est requis. Par exemple, dans des applications où vous avez besoin d'un format de date ou d'heure spécifique (comme les formats ISO 8601), vous devrez utiliser d'autres fonctions comme strftime offrant plus de flexibilité pour personnaliser le format de la date et de l'heure.
- Retour en cas d'erreur : Si le paramètre passé à ctime est invalide (par exemple, un pointeur nul), la fonction renvoie un pointeur nul (nullptr). Il est donc recommandé de vérifier le retour de la fonction pour éviter les erreurs ou les comportements indésirables dans les programmes. Bien que ctime soit rarement appelée avec des valeurs incorrectes, cela reste une bonne pratique de vérifier les conditions d'erreur.
jourdesemaine mois jourdumois heures:minutes:secondes annee\n\0 |
donnant un pointeur sur l'heure du calendrier. L'heure du calendrier est souvent obtenue par un appel à la fonction time().
Exemples
Voici quelques exemples typiques de l'utilisation de cette fonction :

on obtiendra le résultat suivant :
Voici le temps :Thu Jan 01 19:00:00 1970Dans cet exemple, le programme obtient l'heure actuelle avec la fonction time(0), puis la convertit en une chaîne lisible avec ctime et l'affiche :
Voir également
Langage de programmation - C++ - Référence de procédures et fonctions - difftime
Langage de programmation - C++ - Référence de procédures et fonctions - localtime
Langage de programmation - C++ - Référence de procédures et fonctions - mktime
Langage de programmation - C++ - Référence de procédures et fonctions - time
Langage de programmation - C - Référence de procédures et fonctions - ctime
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 731.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 63.