2017-12-25 32 views
-4

好奇心が強い。私はタイプstruct tmの変数に、time_bitsなどのような名前を付ける傾向がありました。これは、壊れたカレンダーの時間ビットを含んでいるためです。私が見たドキュメンテーションのほとんどは、このタイプを 'clock time'または 'epoch seconds'とは対照的にtime_tの 'calendar time'と呼んでいます。`struct tm`の 'tm'は何を表していますか?

+1

[C Date Time tutorial](http://zetcode.com/articles/cdatetime/) –

+0

@ DavidC.Rankinそれは良い読書でした。簡潔で有益な情報しかし、これはUTCのPOSIX表現を完全に誤って表現していました(閏秒が足りませんので、時間を読むのは問題ありませんが、長い時間は測定できません)。私が見つけた唯一の参考資料は、[Olsen's/IANAのタイムゾーンデータベース](https://github.com/eggert/tz/blob/04394af38a9d08fc6655466dfd8d4cf47025893d/time2posix.3#L26-L32)と関連する 'libtz.a ' – Huckle

+0

ポイントはよく取られますが、*時間*と*カレンダー* [カレンダー - 天文暦(uspno.navy.mil)の解説補遺](http://aa.usno.navy.mil/publications /docs/c15_usb_online.pdf)は良い出発点です。天文学的見地からの惑星の位置は、(相対論的な影響の外に)ちょうどすべての時間適用の最も正確を必要とします。 –

答えて

3

混乱を減らす。

3

「時間」の略です。 ISO標準では、それを物語として説明しています。

...壊れた時間と呼ばれるカレンダー時間の成分を保持します。

time_t time(time_t *); 

C構造タグで彼らのために別の名前を持つ、変数/関数名を妨げることはありませんが:それはstruct time命名した場合、多くの人がこの機能でそれを混乱させる

関連する問題