gmtime
time.h:インデックス への移動
ヘッダーファイル
time.h
カテゴリ
日付/時刻ルーチン
プロトタイプ
struct tm *gmtime(const time_t *timer);
説明
日付と時刻をグリニッジ標準時(GMT)に変換します。
gmtime は,time から返される値のアドレスを受け取り,時間の要素を含む tm 型の構造体へのポインタを返します。gmtime は,GMT に直接変換します。
long 型のグローバル変数 _timezone には,GMT とローカル標準時との時差(秒単位)を設定する必要があります(PST の場合,_timezone は 8×60×60)。標準のアメリカ夏時間を適用する場合は,グローバル変数 _daylight を 0 以外の値に設定する必要があります。
次は,time.h ヘッダーファイルで宣言されている tm 構造体です。
struct tm {
int tm_sec; /* 秒 */
int tm_min; /* 分 */
int tm_hour; /* 時(0 ~ 23) */
int tm_mday; /* 日(1 ~ 31) */
int tm_mon; /* 月(0 ~ 11) */
int tm_year; /* 年(カレンダー年 - 1900) */
int tm_wday; /* 曜日(0 ~ 6。日曜は 0) */
int tm_yday; /* 年間日数(0 ~ 365) */
int tm_isdst; /* 夏時間を適用する場合は 0 以外の値。*/
};
これらの値は,24 時間制の時刻,日(1 ~ 31),月(0 ~ 11),曜日(日曜 = 0),年 - 1900,年間日数(0 ~ 365),および夏時間を適用する場合は 0 以外の値になるフラグを提供します。
戻り値
gmtime は,時間の要素を含む構造体へのポインタを返します。この構造体は,呼び出しごとに上書きされる静的オブジェクトです。
例
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
/* 太平洋標準時と夏時間 */
char *tzstr = "TZ=PST8PDT";
int main(void)
{
time_t t;
struct tm *gmt, *area;
putenv(tzstr);
tzset();
t = time(NULL);
area = localtime(&t);
printf("Local time is: %s", asctime(area));
gmt = gmtime(&t);
printf("GMT is: %s", asctime(gmt));
return 0;
}
移植性
POSIX | Win32 | ANSI C | ANSI C++ |
---|---|---|---|
+ |
+ |
+ |
+ |