- ctime[meta header]
- std[meta namespace]
- function[meta id-type]
namespace std {
tm* gmtime(const time_t* timer);
}- time_t[link time_t.md]
- tm[link tm.md]
経過秒 (time_t) を、UTCで表現されたカレンダー時間 (tm構造体) に変換する。
ローカル時間に変換するlocaltimeに対し、この関数はUTC (協定世界時) に変換する。
timerが指すカレンダー時間を、UTCで表現された要素別の時間に変換する。
変換した要素別の時間を指すポインタを返す。
指定された時間をUTCに変換できない場合、ヌルポインタを返す。
戻り値は静的に確保された領域を指すため、gmtimeやlocaltimeの呼び出しのたびに上書きされる可能性がある。スレッドセーフに変換するには、C++26で追加されたgmtime_rを使用する。
#include <ctime>
#include <iostream>
int main()
{
// エポック (1970年1月1日 00:00:00 UTC)
std::time_t t = 0;
std::tm* utc = std::gmtime(&t);
std::cout << (utc->tm_year + 1900) << "年"
<< (utc->tm_mon + 1) << "月"
<< utc->tm_mday << "日" << std::endl;
}- std::gmtime[color ff0000]
- std::tm[link tm.md]
1970年1月1日
- C++98