c++

C++中时间戳与日期时间的相互转换

小樊
146
2024-08-19 20:33:30
栏目: 编程语言

在C++中,可以使用标准库中的时间函数来进行时间戳与日期时间的相互转换。以下是一个简单的示例代码:

#include <iostream>
#include <ctime>

int main() {
    // 获取当前时间的时间戳
    time_t now = time(0);

    // 将时间戳转换为日期时间
    tm *ltm = localtime(&now);
    int year = 1900 + ltm->tm_year;
    int month = 1 + ltm->tm_mon;
    int day = ltm->tm_mday;
    int hour = ltm->tm_hour;
    int min = ltm->tm_min;
    int sec = ltm->tm_sec;
    
    std::cout << "Current Date and Time: " << year << "-" << month << "-" << day << " "
              << hour << ":" << min << ":" << sec << std::endl;
    
    // 将日期时间转换为时间戳
    tm timeinfo = {0};
    timeinfo.tm_year = year - 1900;
    timeinfo.tm_mon = month - 1;
    timeinfo.tm_mday = day;
    timeinfo.tm_hour = hour;
    timeinfo.tm_min = min;
    timeinfo.tm_sec = sec;
    
    time_t timestamp = mktime(&timeinfo);
    
    std::cout << "Timestamp: " << timestamp << std::endl;

    return 0;
}

此代码演示了如何将当前时间转换为日期时间,并将日期时间转换为时间戳。可以根据自己的需求修改和扩展此代码。

0
看了该问题的人还看了