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

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

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で共有していただければ幸いです。

siro:chro 無料ゲーム SQN をリリースしました

img_sqn_00

sirochro 初の無料ゲームアプリ SQN をリリースしました。
記事:SQN: iOS 無料ゲームアプリ SQN - Sequential Numbers をリリース
ちょっとした時間に楽しめる完全無料のゲームなっていますので、是非ダウンロードして遊んでみてください。

↓SQN のダウンロードはこちらから

Related Contents

Pickup Contents