tm | Programming Place Plus C言語編 標準ライブラリのリファレンス

トップページC言語編標準ライブラリのリファレンス(名前順)

トップページC言語編標準ライブラリのリファレンス(ヘッダ別)


tm 🔗

概要 カレンダー時間(歴時間)の詳細を表現する構造体。
ヘッダ time.h
形式
struct tm {
    int tm_sec;
    int tm_min;
    int tm_hour;
    int tm_mday;
    int tm_mon;
    int tm_year;
    int tm_wday;
    int tm_yday;
    int tm_isdst;
};
詳細

各メンバの意味と、値の範囲は以下のとおりである。

メンバ 意味 範囲
tm_sec 0~60
tm_min 0~59
tm_hour 0~23
tm_mday 1~31
tm_mon 0~11
tm_year 1900年を起点とした経過年
tm_wday 曜日 0~6(日曜日を 0 とする)
tm_yday 1月1日を基準とした通算日 0~365
tm_isdst 季節時間のフラグ 0 のときは、季節時間の処理を行わない。
0 より大きいときは、季節時間の処理をおこなう。
0 より小さいときは、不明である(その情報が得られないことを示す)。
注意
使用例
#include <stdio.h>
#include <time.h>
#include <assert.h>

static void print_tm(const struct tm* t);

int main(void)
{
    time_t t = time(NULL);
    struct tm* utc = gmtime(&t);

    print_tm(utc);
}

void print_tm(const struct tm* t)
{
    assert(t != NULL);

    printf("年       : %d\n", t->tm_year);
    printf("月       : %d\n", t->tm_mon);
    printf("日       : %d\n", t->tm_mday);
    printf("曜日     : %d\n", t->tm_wday);
    printf("時       : %d\n", t->tm_hour);
    printf("分       : %d\n", t->tm_min);
    printf("秒       : %d\n", t->tm_sec);
    printf("通算日   : %d\n", t->tm_yday);
    printf("季節時間 : %d\n", t->tm_isdst);
}

実行結果:

年       : 111
月       : 3
日       : 3
曜日     : 0
時       : 4
分       : 7
秒       : 27
通算日   : 92
季節時間 : 0
関連

協定世界時(UTC)を表現した tm構造体の値を gmtime関数で得られる。また、ローカル時間(地域時間)の値を localtime関数で得られる。
tm構造体の値を基にして time_t型の値を生成する mktime関数がある。
asctime関数を使うと、tm構造体の値を文字列形式に変換できる。

解説章

第51章


参考リンク 🔗

本ページはアフィリエイトプログラムによる収益を得ています。
以下のリンクから商品を購入されると、Programming Place 管理者に紹介料が支払われています。


更新履歴 🔗



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る