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




