(Translated by https://www.hiragana.jp/)
time_t - Wikipedia

time_tかたは、システム時刻じこく表現ひょうげんあるいは保存ほぞんするために標準ひょうじゅんCライブラリ定義ていぎしているデータがたである。この標準ひょうじゅんtime()ライブラリ関数かんすうによってられる。このデータがたは、標準ひょうじゅん<time.h> ヘッダファイルtypedefによって定義ていぎされている。ISO Cでは、time_t数値すうちがた定義ていぎしているが、データがた範囲はんい周期しゅうきや、エンコーディング方法ほうほう定義ていぎしていない。また、時刻じこくたいする算術さんじゅつ演算えんざん動作どうさ定義ていぎしていない。

UNIXPOSIX互換ごかんシステムでは、UNIX時間じかん協定きょうてい世界せかい (UTC) 1970ねん1がつ1にち0とき00ぶん00びょうからのびょうすう)をあらわ符号ふごうづけ整数せいすう通常つうじょうは32または64ビット)でtime_tかた実装じっそうしている(うるうびょうかぞえない)。いくつかのシステムでは、まけ時刻じこくをサポートするが、サポートしないシステムもある。2038ねん問題もんだいのために、32ビットtime_t非難ひなんされている[1]。 そのため、最近さいきんのシステムには、time_t64ビット整数せいすうがたとして定義ていぎしているものがおおいが、ふるいシステムではそうでないものもあるので注意ちゅうい必要ひつようである。

ISO Cでは、time()関数かんすうだけでなく、システム時刻じこくtime_tカレンダー時刻じこく変換へんかんする関数かんすうや、ぎゃく変換へんかんおこなう関数かんすうなどを定義ていぎしている。

利用りようれい

編集へんしゅう

以下いかC言語げんごのコードは現在げんざい時刻じこく取得しゅとくし、文字もじれつ整形せいけいし、標準ひょうじゅん出力しゅつりょく出力しゅつりょくする。

#include <stdio.h>
#include <time.h>

/*
* The result should look something like
* Fri 2008-08-22 15:21:59 WAST
*/

int main(void)
{
    time_t     now;
    struct tm  *ts;
    char       buf[80];

    // Get the current time
    now = time(NULL);

    // Format and print the time, "ddd yyyy-mm-dd hh:mm:ss zzz"
    ts = localtime(&now);
    strftime(buf, sizeof(buf), "%a %Y-%m-%d %H:%M:%S %Z", ts);
    printf("%s\n", buf);
    printf("%lld\n", (long long)now);

    return 0;
}

time_tパーティ

編集へんしゅう

UNIXファンは、UNIX時間じかん意味いみありげな祝賀しゅくがするためにtime_tパーティおこなってきた歴史れきしがある。これは、おおくのこよみとしわるときにおこなわれる新年しんねんパーティとている。UNIX時間じかん使用しようひろがったことで、マイルストーンをいわうことが習慣しゅうかんとなった。通常つうじょうはしすうのない10進数しんすう時刻じこくが、time_t のを10進数しんすうながめるUNIXのコンベンションで祝賀しゅくがされる。一部いちぶのグループは、2004ねん1がつ10日とおかの13:37:04 UTCこった+230のようなはしすうのない2進数しんすう祝賀しゅくがしている。

これらの祝賀しゅくがイベントは、通常つうじょうは「UNIX epochからNびょう」とばれるが、これは不正確ふせいかくである。うえべたとおり、UNIX時刻じこくうるうびょうあつかいのため、UNIX epochからのびょうすうはUNIX時刻じこくかずよりもわずかにおおきい。

2001ねん9月9にち 01:46:40 UTCUNIX billennium(UNIX時刻じこくが1000000000)の祝賀しゅくがおこなわれた。

2005ねん3月18にち 01:58:31 UTC、UNIX時刻じこくが1111111111に到達とうたつした。

2009ねん2がつ13にち 23:31:30 UTC、UNIX時刻じこくが1234567890に到達とうたつし、世界中せかいじゅうのさまざまなテクノロジーサブカルチャーのあいだでパーティーやその祝賀会しゅくがかい開催かいさいされた。

2033ねん5月18にち 03:33:20 UTC、2かいのUNIX billennium(UNIX時刻じこくが2000000000)の祝賀しゅくがおこなわれる予定よてい

脚注きゃくちゅう

編集へんしゅう
  1. ^ The Year 2038 problem, Roger M. Wilcox. Retrieved on 2008ねん5月19にち.

関連かんれん項目こうもく

編集へんしゅう