アプリケーションから秒、分、時、日、月、年を単一の値として取得し、この値から UNIX タイムスタンプを生成する必要があります。
C関数でタイムスタンプを直接取得する方法しか見つけられませんでした。
C++ で指定された値を使用して UNIX タイムスタンプを生成するにはどうすればよいですか?
C++ 標準ライブラリでも使用std::mktime
できる 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 のGregorian date systemなどのサードパーティ ライブラリを使用します。