C++ 运行时库(CRT)提供了一些函数来处理时间和日期。这些函数位于 <ctime>
头文件中,它们可以帮助你执行常见的时间和日期操作,如获取当前时间、格式化时间以及解析时间字符串等。
以下是一些常用的 C++ CRT 时间和日期函数:
time_t
值。#include <ctime>
time_t now = time(0);
time_t
值转换为“本地时间”的 tm
结构。#include <ctime>
struct tm *local_time = localtime(&now);
time_t
值转换为“格林尼治标准时间”的 tm
结构。#include <ctime>
struct tm *gmt_time = gmtime(&now);
time_t
值转换为字符串形式。#include <ctime>
char buffer[80];
ctime(buffer); // buffer 现在包含了当前时间的字符串表示
tm
结构为字符串。#include <ctime>
struct tm local_time = *localtime(&now);
char buffer[80];
strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", &local_time);
tm
结构。#include <ctime>
const char *date_str = "2023-07-20 15:30:00";
struct tm parsed_time;
strptime(date_str, "%Y-%m-%d %H:%M:%S", &parsed_time);
tm
结构转换为 time_t
值。#include <ctime>
struct tm local_time = {0, 0, 0, 20, 6, 130}; // July 20, 2023, 00:00:00
time_t new_time = mktime(&local_time);
这些函数提供了对时间和日期的基本操作,但在处理复杂的日期和时间逻辑时,你可能还需要使用 C++11 引入的 <chrono>
库,它提供了更强大和灵活的时间处理功能。