broken-down time

構造体 tm

[2] C言語time.h構造体 tm は、日時を表します。

[10] Perl ではリストで表します。>>9

仕様書

意味

[3] tm は、 calendar time の各 component を保持します。 すなわち broken-down time を表します。 >>1

メンバー

[4] 次のメンバーを持ちます。 >>1

tm_sec
からの int [ 0, 60 ] (60正閏秒)
tm_min
からの int [ 0, 59 ]
tm_hour
深夜 (midnight) からの int [ 0, 23 ]
tm_mday
int [ 1, 31 ]
tm_mon
January からの int [ 0, 11 ]
tm_year
1900年からの年 int
tm_wday
Sunday からの int [ 0, 6 ]
tm_yday
January 1日からの int [ 0, 365 ]
tm_isdst
DST フラグ int : DST 中はDST 外は 0、 不明ならmktime では、 0 なら DST 中・外の時刻とみなして解釈しようとし、 なら指定時刻DST 中かどうか判定しようとします。

[7] mktime値域外の値が与えられても受け入れ、 適切な値に置き換えようとします。 >>1

文脈

[5] C言語Perlgmtime, localtimetime_ttm に変換します。

[8] C言語mktimetm を受け取り time_t を返します。

[13] PerlモジュールTime::Localtm リストを受け取り time_t を返します。 2桁西暦年号の解釈の特殊な規則があるため gmtime/localtime の完全な逆演算にはなっていません。

メモ

[14] Date (Java Platform SE 8 ) () https://docs.oracle.com/javase/jp/8/docs/api/java/util/Date.html

年、月、日、時間、分、秒の値を受け取るか返すクラスDateのすべてのメソッドにおいて、次の表示が使用されます。

年yは整数y - 1900によって表されます。

月は0 - 11の整数で表されます。0は1月、1は2月、そして11は12月を意味します。

日(月の何日目)は通常どおり1 - 31の整数で表されます。

時間は0 - 23の整数で表されます。このため、深夜零時から午前1時までの時間は時刻0であり、正午から午後1時までの時間は時刻12を意味します。

分は通常どおり0 - 59の整数で表されます。

秒は0 - 61の整数で表されます。値60および61は、うるう秒のためにだけ、そして実際にうるう秒を正確に追跡するJavaの実装だけで発生します。現在使われているうるう秒の算出法では、2回のうるう秒が同じ分に発生することはきわめてまれですが、この仕様はISO Cによる日付および時刻の規約に従います。