MENU
コンテンツ再構築中

C++:C標準ライブラリと主な関数のリスト(6) time.h

C言語の標準ライブラリの中から、日時に関する関数がセットになっているtime.hをまとめました。

INDEX

time.h

時刻を取り扱う関数群。
これらの関数はunixの慣習から世界協定時刻(utc)における1970年1月1日0時0分0秒を基準としている。

time

書式 time_t time(time_t *t);
引数 time_t *t(時刻を格納する変数のアドレス)
戻り値 基準時刻からの経過秒数
機能 現在の時刻を基準時刻からの経過秒数で返す
補足 引数を null で呼び出して戻り値だけを取得できる(環境によっては秒以外の単位を使うこともある)

clock

書式 clock_t clock(void);
引数 なし
戻り値 使用プロセス時間
機能 プログラムが使用したプロセス時間を返す
補足 clock() / clocks_per_sec とすることで秒単位の値を得られる
注意 マルチスレッド環境では経過時刻と一致しない

difftime

書式 double difftime(time_t t1, time_t t2);
引数 time_t t1(基準時刻からの経過秒数1)/time_t t2(基準時刻からの経過秒数2)
戻り値 2つの経過秒数の差
機能 時刻の引き算をする(環境によっては秒以外の単位を使うこともある)

localtime

書式 struct tm *localtime(const time_t *t);
引数 const time_t *t(基準時刻からの経過秒数)
戻り値 秒数を国内時刻情報に変換した構造体
機能 基準時刻からの経過秒数を国内時刻に変換する
注意 戻り値はシステム全体で共有されたメモリ領域なので、別途宣言した構造体にコピーしておくこと

gmtime

書式 struct tm *gmtime(const time_t *t);
引数 const time_t *t(基準時刻からの経過秒数)
戻り値 秒数を国際時刻情報に変換した構造体
機能 基準時刻からの経過秒数を国際時刻に変換する
注意 戻り値はシステム全体で共有されたメモリ領域なので、別途宣言した構造体にコピーしておくこと

asctime

書式 char *asctime(const struct tm *tm);
引数 const struct tm *tm(時刻を格納した構造体)
戻り値 時刻を変換した文字列の先頭アドレス
機能 時刻を wed feb 17 20:14:04 1988 のような文字列に変換する
注意 戻り値はシステム全体で共有されたメモリ領域なので、別途宣言した構造体にコピーしておくこと

ctime

書式 char *ctime(const time_t *t);
引数 const time_t *t(基準時刻からの経過秒数)
戻り値 時刻を変換した文字列の先頭アドレス
機能 時刻を thu Oct 31 20:35:8 2013 のような文字列に変換する
注意 戻り値はシステム全体で共有されたメモリ領域なので、別途宣言した構造体にコピーしておくこと

strftime

書式 size_t strftime(char *s, size_t smax, const char *fmt, const struct tm *tp);
引数 char *s(文字配列)/size_t smax(文字配列のサイズ)/const char *fmt(時刻書式指定文字列)/const struct tm *tp(時刻を格納した構造体)
戻り値 配列に書き込まれた文字数/失敗した場合は0
機能 時刻を指定された書式通りに文字列に変換する

さいごに

この記事がみなさんのお役に立ちましたら、下記「Share it」よりブックマークやSNSで共有していただければ幸いです。

Please share it!
  • URLをコピーしました!
  • URLをコピーしました!
INDEX