Date et heure C++
La bibliothèque standard C++ ne fournit pas de type de date. C++ hérite des structures et fonctions du langage C pour les opérations de date et d'heure. Afin d'utiliser les fonctions et structures liées à la date et à l'heure, le fichier d'en-tête <ctime> doit être référencé dans le programme C++.
a quatre types liés au temps : clock_t, time_t, size_t et tm. Les types clock_t, size_t et time_t représentent l'heure et la date du système sous la forme de certains entiers.
Type de structuretm Enregistrez la date et l'heure sous la forme d'une structure C La définition de la structure tm est la suivante :
struct tm { int tm_sec; // 秒,正常范围从 0 到 59,但允许至 61 int tm_min; // 分,范围从 0 到 59 int tm_hour; // 小时,范围从 0 到 23 int tm_mday; // 一月中的第几天,范围从 1 到 31 int tm_mon; // 月,范围从 0 到 11 int tm_year; // 自 1900 年起的年数 int tm_wday; // 一周中的第几天,范围从 0 到 6,从星期日算起 int tm_yday; // 一年中的第几天,范围从 0 到 365,从 1 月 1 日算起 int tm_isdst; // 夏令时 }
Ce qui suit concerne la date et l'heure dans. Fonctions importantes du C/C++. Toutes ces fonctions font partie de la bibliothèque standard C/C++. Vous pouvez vérifier les détails de chaque fonction dans la bibliothèque standard C++.
Numéro de série | Fonction et description | tr >||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 |
Cette fonction renvoie l'heure actuelle du calendrier du système depuis le 1er janvier 1970. nombre de secondes écoulées. Si le système n'a pas de temps, .1 est renvoyé. | ||||||||||||||||||||
2 | <🎜>char *ctime(const time_t *time);<🎜> Ceci renvoie un caractère représentant l'heure locale Pointeur de chaîne, format de chaînejour mois année heures:minutes:secondes aspirer Date et heure actuellesL'exemple suivant obtient la date et l'heure actuelles du système, y compris l'heure locale et le temps universel coordonné (UTC). #include <iostream> #include <ctime> using namespace std; int main( ) { // 基于当前系统的当前日期/时间 time_t now = time(0); // 把 now 转换为字符串形式 char* dt = ctime(&now); cout << "本地日期和时间:" << dt << endl; // 把 now 转换为 tm 结构 tm *gmtm = gmtime(&now); dt = asctime(gmtm); cout << "UTC 日期和时间:"<< dt << endl; } 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 Formater l'heure à l'aide de struct tmtm struct C'est particulièrement important lorsqu'il s'agit d'opérations liées à la date et à l'heure en C/C++. La structure tm contient la date et l'heure sous forme de structure C. La plupart des fonctions liées au temps utilisent la structure tm. L'exemple suivant utilise la structure tm et diverses fonctions liées à la date et à l'heure. Avant de vous entraîner à utiliser les structures, vous devez avoir une compréhension de base des structures C et savoir comment utiliser l'opérateur flèche -> #include <iostream> #include <ctime> using namespace std; int main( ) { // 基于当前系统的当前日期/时间 time_t now = time(0); cout << "Number of sec since January 1,1970:" << now << endl; tm *ltm = localtime(&now); // 输出 tm 结构的各个组成部分 cout << "Year: "<< 1900 + ltm->tm_year << endl; cout << "Month: "<< 1 + ltm->tm_mon<< endl; cout << "Day: "<< ltm->tm_mday << endl; cout << "Time: "<< 1 + ltm->tm_hour << ":"; cout << 1 + ltm->tm_min << ":"; cout << 1 + ltm->tm_sec << endl; } Lorsque le code ci-dessus est compilé et exécuté, il produit les résultats suivants : Number of sec since January 1, 1970:1294548238 Year: 2011 Month: 1 Day: 8 Time: 22: 44:59 |