如何在C++中使用strftime格式化时间

avatar
作者
猴君
阅读量:0

strftime 是 C++ 标准库中的一个函数,用于将 tm 结构体(包含日期和时间信息)格式化为字符串。以下是如何在 C++ 中使用 strftime 的示例:

#include<iostream> #include <ctime> #include <iomanip>  int main() {     time_t now = time(0); // 获取当前时间     struct tm *timeinfo = localtime(&now); // 转换为本地时间      char buffer[80]; // 存储格式化后的时间字符串的缓冲区      // 使用 strftime 格式化时间     strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", timeinfo);      std::cout << "Formatted time: "<< buffer<< std::endl;      return 0; } 

在这个示例中,我们首先获取当前时间(以 time_t 类型表示),然后将其转换为 tm 结构体(本地时间)。接下来,我们创建一个字符缓冲区,用于存储格式化后的时间字符串。最后,我们使用 strftime 函数将 tm 结构体格式化为指定格式的字符串,并将结果输出到控制台。

strftime 函数的第一个参数是字符缓冲区,第二个参数是缓冲区的大小,第三个参数是格式化字符串,第四个参数是要格式化的 tm 结构体。格式化字符串可以包含各种格式说明符,例如 %Y 表示年份,%m 表示月份,%d 表示日期,%H 表示小时,%M 表示分钟,%S 表示秒等。更多格式说明符可以参考 cppreference.com

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!