arrow 若葉プログラミング塾 > 知識の玉手箱 > C関数リファレンス >
mktime()
mktime()

この関数の目的

mktime()は、展開時間を time_t 型に変換する。

定義

	#include <time.h>
	time_t mktime(struct tm *timeptr);

働き

この関数は、 timeptr が指すオブジェクトの局所時間で表した展開時間を、 time() が返す値と同じ形式で返す。 構造体の tm_wday および tm_yday メンバの値は無視される。 他のメンバは time.h に書かれている値域に入っている必要はない。 成功裡に終了した場合は、構造体の tm_wday および tm_yday メンバには、適切な値が格納される。 その他のメンバについては、指定されたカレンダー時間の値を time.h の値域の中に入るように設定し直される。 tm_mday の終端値は tm_mon および tm_year が決定されるまで設定されない。

返り値は、指定されたカレンダー時間を time_t 型としてエンコードしたものである。 カレンダー時間が表現不可能であった場合、返り値は (time_t)-1 である。

解説

何年何月何日何時何分何秒かが分かれば、それを time_t 型に変換してくれるのがこの関数だ。 struct tm 型のオブジェクトは自動変数(静的変数、ヒープ変数でもよいが)として確保し、それへのポインタを渡して使う。

arrow 若葉プログラミング塾 > 知識の玉手箱 > C関数リファレンス >
KC