C 標準ライブラリ - <time.h>


はじめに

time.h ヘッダー ファイルには、日付と時刻を操作するための 4 つの変数タイプ、2 つのマクロ、およびさまざまな関数が定義されています。

ライブラリ変数

ヘッダーファイル time.h で定義されている変数の型は次のとおりです:

シリアル番号変数と説明
1size_t
は符号なし整数ですゲルタイプ、それは sizeof キーワードの結果です。
2 Clock_t
これはプロセッサ時間を保存するのに適した型です。
3time_tは
カレンダーの時刻を格納するのに適した型です。
4struct tm
これは、時間と日付を節約するために使用される構造体です。

tm 構造は次のように定義されています:

struct tm {   int tm_sec;         /* 秒,范围从 0 到 59		*/   int tm_min;         /* 分,范围从 0 到 59		*/   int tm_hour;        /* 小时,范围从 0 到 23		*/   int tm_mday;        /* 一月中的第几天,范围从 1 到 31	*/   int tm_mon;         /* 月,范围从 0 到 11		*/   int tm_year;        /* 自 1900 年起的年数		*/   int tm_wday;        /* 一周中的第几天,范围从 0 到 6	*/   int tm_yday;        /* 一年中的第几天,范围从 0 到 365	*/   int tm_isdst;       /* 夏令时				*/};

ライブラリマクロ

以下はヘッダーファイル time.h で定義されているマクロです:

シリアル番号マクロと説明
1 NULL
このマクロは、NULL ポインター定数の値です。
2CLOCKS_PER_SEC
このマクロは、1 秒あたりのプロセッサ クロック数を表します。

ライブラリ関数

以下はヘッダーファイルtime.hで定義されている関数です:

3char *ctime(const time_t *timer)4double difftime(time_t time1, time_t time2)5struct tm *gmtime(const time_t *timer)6struct tm *localtime(const time_t *timer)7time_t mktime(struct tm *timeptr)8size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr)9time_t time(time_t *timer)
シリアル番号関数と説明
1char *asctime(const struct tm * timeptr)
構造体 timeptr の日付と時刻を表す文字列へのポインタを返します。
2 Clock_t Clock(void)
プログラムの実行 (通常はプログラムの開始時) 以降にプロセッサー クロックによって使用された時間を返します。
現地時間を表す文字列を返します。現地時間はパラメータ timer に基づいています。
time1 と time2 の差の秒数 (time1-time2) を返します。
timer 値は tm 構造体に分解され、グリニッジ標準時 (GMT) とも呼ばれる協定世界時 (UTC) で表現されます。
timer 値は tm 構造体に分解され、ローカルタイムゾーンで表現されます。
timeptr が指す構造体をローカルタイムゾーンに基づいた time_t 値に変換します。
format で定義された書式設定規則に従って、構造体 timeptr で表される時間を書式設定して、それを格納しますstr.
現在のカレンダー時刻を計算し、time_t 形式にエンコードします。