#include <sys/timeb.h>
int ftime(struct timeb *tp);
NOTE: This function is deprecated, and will be removed in a future version of the GNU C library. Use clock_gettime(2) instead.
この関数は現在の時刻を、紀元 (Epoch; 1970-01-01 00:00:00 +0000 (UTC)) からの秒数とミリ秒数で返す。 時刻は tp で返され、これは以下のように定義されている:
struct timeb {
time_t time;
unsigned short millitm;
short timezone;
short dstflag;
};
ここで、time は紀元 (the Epoch) からの秒数、 millitm は 紀元から time 秒後からのミリ秒数である。 timezone フィールドはグリニッジから西周りの分で計測される ローカルタイムゾーンである(負数の場合はグリニッジからの東回りの分を 示す)。 dstflag フィールドは、もし 0 でなければ一年の一部で夏時間が 存在することを示すフラグである。
POSIX.1-2001 では、timezone と dstflag の内容は未定義である; これに頼るのは避けること。
この関数は常に 0 を返す。 (POSIX.1-2001 仕様及びいくつかのシステムのドキュメントでは、 エラー時に -1 を返す。)
この節で使用されている用語の説明については、 attributes(7)EN を参照。
| インターフェース | 属性 | 値 |
| ftime() | Thread safety | MT-Safe |
初期の glibc2 ではバグがあり、常に millitm フィールドに 0 を返す。 glibc 2.1.1 から再び正常になった。
この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。