如何在C++中生成unix时间戳
How to generate unix timestamp in C++?
我从应用程序中获得秒、分钟、小时、天、月和年作为单个值,并且需要从这些值生成unix时间戳。
我只找到了如何使用C函数直接获取时间戳的解决方案。
如何在C++中生成具有给定值的unix时间戳?
使用std::mktime
,这是C++标准库中也可用的C库函数
#include <ctime>
std::tm tm;
tm.tm_sec = seconds;
tm.tm_min = minutes;
tm.tm_hour = hours;
tm.tm_mday = day;
tm.tm_mon = month - 1; // Assuming your month represents Jan with 1
tm.tm_year = year - 1900; // Assuming your year is the AD year number
std::time_t time = std::mktime(&tm);
或者,为了获得更多C++风格,可以使用第三方库,如Boost.DateTime的格里高利日期系统。
相关文章:
- C++:floor unix时间戳到UTC月份
- 将 unix 时间戳转换为人类可读的日期
- 将日期字符串转换为 unix 时间戳
- 如何将毫秒的日期时间字符串转换为 UNIX 时间戳
- 快速将带有时区的日期时间字符串转换为 UNIX 时间戳(C++)
- 如何将WSTRING中的Unix时间戳转换为char数组中格式的日期
- 使用 std::chrono 将 32 位 unix 时间戳转换为 std::string
- 如何在C++11中将Unix时间戳字符串转换为time_t
- 用C或C++将当前时间从windows转换为unix时间戳
- 使用 ctime 转换 UNIX 时间戳
- C++提升以 UTC 格式获取 unix 时间戳
- C++ Boost将UNIX时间戳转换为MySQL兼容的DATETIME字符串
- 从 UNIX 时间戳获取同月第一天的时间戳,而无需转换为本地时间
- 将 Unix 时间戳(以毫秒为单位)转换为正常日期
- boost::gregori::time到unix时间戳的时间为双
- 获取当前小时unix时间戳
- 如何在C++中生成unix时间戳
- 将字符串时间转换为UNIX时间戳
- 从 C/C++ 中的日期和时间转换为 UNIX 时间戳的正确方法是什么?
- 从GMT/UTC字符串到UNIX时间戳的Qt5(C++)转换