time(2) 秒単位の時間を得る

書式

#include <time.h>

time_t time(time_t *t);

説明

time() は、紀元 (Epoch; 1970-01-01 00:00:00 (UTC)) からの秒数で返す。

もし t が NULL でなかったら返り値は t の指しているメモリにも格納される。

返り値

成功した場合、紀元(the Epoch)からの経過秒数を返す。エラーの場合は ((time_t) -1) を返し、errno を設定する。

エラー

EFAULT
t がアクセス可能なアドレス空間の外を指している。

準拠

SVr4, 4.3BSD, C89, C99, POSIX.1-2001. POSIX にはエラー状態の規定はない。

注意

POSIX.1 では、指定した時刻と紀元との間の秒数を近似する変換式を使って、
 「紀元からの経過秒数 (seconds since the Epoch)」 を定義している。 この変換式では、4 で割り切れる年で、100 で割り切れない年はすべて閏年 (但し、400 で割り切れる年は閏年) であるという点も考慮されている。 「紀元からの経過秒数」は、紀元と現在時刻との間で実際に経過した秒数と同じではない。 なぜならば、閏秒が存在するし、システムの時計を標準時間 (standard reference) に同期させる必要もないからである。 この定義の目的は、紀元からの経過秒数の解釈に一貫性を持たせることになる。 より詳しい原理は POSIX.1 Rationale A.4.15 を参照すること。

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.65 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。