localtime
是C++标准库中的一个函数,用于将一个std::time_t
类型的时间戳转换为可读的本地时间(即包含日期和时间的结构体)
-
包含头文件: 在代码中包含
头文件,以便使用localtime
函数。#include
-
使用
time_t
类型存储时间戳:time_t
是一个无符号整数类型,用于存储自1970年1月1日(UTC)以来的秒数。你可以使用std::time
函数获取当前时间戳。std::time_t currentTime = std::time(nullptr);
-
使用
localtime
函数转换时间戳:localtime
函数接受一个const time_t*
类型的参数(即时间戳),并返回一个指向std::tm
结构体的指针。这个结构体包含了本地时间的日期和时间信息。std::tm localTime = *std::localtime(¤tTime);
-
输出本地时间: 使用
std::cout
和std::put_time
函数输出本地时间。std::put_time
是一个格式化输出函数,它使用std::tm
结构体中的信息来生成可读的字符串。std::cout << "Local time: " << std::put_time(&localTime, "%Y-%m-%d %H:%M:%S") << std::endl;
下面是一个完整的示例程序:
#include#include int main() { // 获取当前时间戳 std::time_t currentTime = std::time(nullptr); // 将时间戳转换为本地时间 std::tm localTime = *std::localtime(¤tTime); // 输出本地时间 std::cout << "Local time: " << std::put_time(&localTime, "%Y-%m-%d %H:%M:%S") << std::endl; return 0; }
这个程序将输出当前本地时间,格式为YYYY-MM-DD HH:MM:SS
。你可以根据需要调整std::put_time
中的格式字符串。更多格式化选项可以参考C++标准库文档:https://en.cppreference.com/w/cpp/io/manip/put_time