温馨提示×

c++ datetime有哪些格式化技巧

c++
小樊
94
2024-07-12 15:18:36
栏目: 编程语言

在C++中处理日期和时间的库有很多,比如<ctime><chrono>等。下面列举一些常见的日期时间格式化技巧:

  1. 使用<ctime>库中的strftime()函数可以将时间转换成指定格式的字符串,例如:
#include <iostream>
#include <ctime>

int main() {
    time_t now = time(nullptr);
    char buffer[80];
    strftime(buffer, 80, "%Y-%m-%d %H:%M:%S", localtime(&now));
    std::cout << buffer << std::endl;
    return 0;
}
  1. 使用<chrono>库中的system_clocktime_point等类可以更方便地处理时间,例如:
#include <iostream>
#include <chrono>

int main() {
    auto now = std::chrono::system_clock::now();
    std::time_t now_c = std::chrono::system_clock::to_time_t(now);
    std::cout << std::put_time(std::localtime(&now_c), "%Y-%m-%d %H:%M:%S") << std::endl;
    return 0;
}
  1. 使用第三方库如Boost库中的date_time可以更加灵活地处理日期和时间,例如:
#include <iostream>
#include <boost/date_time/gregorian/gregorian.hpp>

int main() {
    boost::gregorian::date today = boost::gregorian::day_clock::local_day();
    std::cout << today.year() << "-" << today.month() << "-" << today.day() << std::endl;
    return 0;
}

以上是一些常见的C++中处理日期和时间的格式化技巧,根据具体的需求选择合适的库和方法来进行处理。

0