C++ Date & heure
La bibliothèque standard C++ ne fournit pas de type de date à proprement parler. C++ hérite des structures et fonctions du langage C pour les opérations de date et d'heure. Pour utiliser les fonctions et structures liées à la date et à l'heure, vous devez inclure le fichier d'en-tête <ctime> dans un programme C++.
Il existe quatre types liés au temps :clock_t, time_t, size_tettmLes types clock_t, size_t et time_t peuvent représenter la date et l'heure système sous la forme d'un entier quelconque.
type de structuretmLa date et l'heure sont stockées sous la forme d'une structure C. La structure tm est définie comme suit :
Ci-dessous se trouvent les fonctions importantes liées à la date et à l'heure en C/C++. Toutes ces fonctions font partie de la bibliothèque standard C/C++. Vous pouvez consulter les détails de chaque fonction dans la bibliothèque standard C++.
| Numéro de série | Fonctions et description |
|---|---|
| 1 | time_t time(time_t *time); Cette fonction renvoie l'heure calendaire actuelle du système, qui est le nombre de secondes écoulées depuis le 1er janvier 1970. Si le système n'a pas d'heure, elle renvoie -1. |
| 2 | char *ctime(const time_t *time); Cette fonction renvoie un pointeur vers une chaîne dont le contenu représente l'heure locale, au format : Www Mmm dd hh:mm:ss yyyy\n\0 Où :
Exemple de valeur de retour : "Tue Jul 29 19:12:15 2025\n\0" |
| 3 | struct tm *localtime(const time_t *time); Cette fonction renvoie un pointeur vers une structure représentant l'heure locale.tmPointeur vers la structure. |
| 4 | clock_t clock(void); Cette fonction renvoie le temps processeur utilisé depuis le début de l'exécution du programme (généralement le début du programme). Si l'heure n'est pas disponible, elle renvoie -1. |
| 5 | char * asctime ( const struct tm * time ); Cette fonction renvoie un pointeur vers une chaîne. La chaîne contient les informations stockées dans la structure pointée par time. Le format de retour est : jour mois date heures:minutes:secondes année\n\0. |
| 6 | struct tm *gmtime(const time_t *time); Cette fonction renvoie un pointeur vers time, où time est une structure tm, exprimée en temps universel coordonné (UTC), également appelé temps moyen de Greenwich (GMT). |
| 7 | time_t mktime(struct tm *time); Cette fonction renvoie le temps calendaire, qui est équivalent au temps stocké dans la structure pointée par time. |
| 8 | double difftime ( time_t time2, time_t time1 ); Cette fonction renvoie la différence en secondes entre time1 et time2. |
| 9 | size_t strftime(); Cette fonction peut être utilisée pour formater des dates et des heures dans un format spécifié. |
Date et heure actuelles
L'exemple suivant obtient la date et l'heure actuelles du système, y compris l'heure locale et le temps universel coordonné (UTC).
Exemple
Lorsque le code ci-dessus est compilé et exécuté, il produit les résultats suivants :
本地日期和时间:Sat Jan 8 20:07:41 2011 UTC 日期和时间:Sun Jan 9 03:07:41 2011
Formatage de l'heure à l'aide de la structure tm
tmLa structure est particulièrement importante lors de la gestion des opérations liées à la date et à l'heure en C/C++. La structure tm conserve la date et l'heure sous la forme d'une structure C. La plupart des fonctions liées au temps utilisent la structure tm. L'exemple ci-dessous utilise la structure tm et diverses fonctions liées à la date et à l'heure.
Avant de pratiquer l'utilisation des structures, vous devez avoir une compréhension de base des structures C et savoir utiliser l'opérateur flèche -> pour accéder aux membres d'une structure.
Exemple
Lorsque le code ci-dessus est compilé et exécuté, il produit les résultats suivants :
1970 到目前时间:1503564157 年: 2017 月: 8 日: 24 时间: 16:42:37autres extensions