概要
ローカル時間で表現されたカレンダー時間 (tm構造体) を、経過秒 (time_t) に変換する。
入力をUTCとして解釈するtimegmに対し、この関数は入力をローカル時間として解釈する。
効果
timeptrが指す構造体のカレンダー時間 (ローカル時間として表現される) を、time関数が返す値と同じエンコーディングの経過秒に変換する。
tm_wdayとtm_ydayの元の値は無視され、それ以外のメンバは規定の範囲に制限されない。変換に成功した場合、tm_wdayとtm_ydayは適切に設定され、その他のメンバは規定の範囲に正規化される。
戻り値
指定されたカレンダー時間をtime_t型の値として返す。
カレンダー時間がtime_tで表現できない場合、(time_t)(-1)を返す。
例
#include <ctime>
#include <iostream>
int main()
{
// 2026年1月1日 (曜日は未設定)
std::tm t{};
t.tm_year = 2026 - 1900;
t.tm_mon = 0;
t.tm_mday = 1;
std::mktime(&t);
// mktimeによってtm_wdayが設定される (0が日曜、4は木曜)
std::cout << t.tm_wday << std::endl;
}
出力
4
バージョン
言語
- C++03