Provided by: manpages-ja-dev_0.5.0.0.20210215+dfsg-1_all
名前
timegm, timelocal - gmtime と localtime の逆関数
書式
#include <time.h> time_t timelocal(struct tm *tm); time_t timegm(struct tm *tm); glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照): timelocal(), timegm(): _BSD_SOURCE || _SVID_SOURCE
説明
timelocal() 関数と timegm() 関数は、それぞれ localtime(3) 関数と gmtime(3) 関数の逆関数 である。
準拠
これらの関数は非標準で GNU の拡張である。 BSD 系にも存在する。 これらの使用は避けるこ と。「注意」参照。
注意
timelocal() 関数は POSIX の標準関数 mktime(3) と同じものである。 ので、これを使う理由は ないはずである。 timegm() を移植性があるようなかたちで実現するには、 TZ 環境変数を UTC に設定してから mktime(3) を呼んで、 TZ の値を取得すればよい。 例えば次のようになるだろう。 #include <time.h> #include <stdlib.h> time_t my_timegm (struct tm *tm) { time_t ret; char *tz; tz = getenv("TZ"); if (tz) tz = strdup(tz); setenv("TZ", "", 1); tzset(); ret = mktime(tm); if (tz) { setenv("TZ", tz, 1); free(tz); } else unsetenv("TZ"); tzset(); return ret; }
関連項目
gmtime(3), localtime(3), mktime(3), tzset(3)
この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクト の説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。