時間管理

以下の関数を使用すると、現在の時刻を取得して、必要に応じて変換、調整、保存を行うことができます。 現在の時刻とはシステム時刻のことです。

_ftime および localtime ルーチンでは TZ 環境変数が使用されます。 TZ が設定されていない場合、ランタイム ライブラリはオペレーティング システムで指定されるタイム ゾーン情報を使用します。 この情報が使用できないとき、これらの関数では既定値 PST8PDT が使用されます。 TZ の詳細については、_tzset および _daylighttimezone_tzname を参照してください。

時間ルーチン

機能 使用
asctime, _wasctime, asctime_s, _wasctime_s 時刻を struct tm 型から文字列に変換します。 これらの関数のうち、 _s サフィックスの付いているバージョンがより安全です。
clock プロセスの実際の経過時間を返します。
ctime, _ctime32, _ctime64, _wctime, _wctime32, _wctime64, _ctime_s, _ctime32_s, _ctime64_s, _wctime_s, _wctime32_s, _wctime64_s 時刻を time_t型、 __time32_t 型、または __time64_t 型から文字列に変換します。 これらの関数のうち、 _s サフィックスの付いているバージョンがより安全です。
difftime, _difftime32, _difftime64 2 つの時刻の差を計算します。
_ftime, _ftime32, _ftime64,_ftime_s, _ftime32_s, _ftime64_s struct _timeb 型または struct __timeb64 これらの関数のうち、 _s サフィックスの付いているバージョンがより安全です。
_futime, _futime32, _futime64 開いているファイルの変更時刻を設定します。
gmtime, _gmtime32, _gmtime64, gmtime_s, _gmtime32_s, _gmtime64_s 時刻を time_t 型から struct tm に変換するか、__time64_t 型から struct tm に変換します。 これらの関数のうち、 _s サフィックスの付いているバージョンがより安全です。
localtime, _localtime32, _localtime64, localtime_s, _localtime32_s, _localtime64_s 時刻を time_t 型から struct tm に変換するか、__time64_t 型からローカル時刻に修正した struct tm に変換します。 これらの関数のうち、 _s サフィックスの付いているバージョンがより安全です。
_mkgmtime, _mkgmtime32, _mkgmtime64 時刻をグリニッジ標準時のカレンダーの値に変換します。
mktime, _mktime32, _mktime64 時刻をカレンダーの値に変換します。
_strdate, _wstrdate, _strdate_s, _wstrdate_s 現在のシステム日付を文字列として返します。 これらの関数のうち、 _s サフィックスの付いているバージョンがより安全です。
strftime, wcsftime, _strftime_l, _wcsftime_l 国際対応するように日付と時刻の文字列の書式を設定します。
_strtime, _wstrtime, _strtime_s, _wstrtime_s 現在のシステム時刻を文字列として返します。 これらの関数のうち、 _s サフィックスの付いているバージョンがより安全です。
time, _time32, _time64 time_t型、 __time32_t 型、または __time64_t型で、現在のシステム時刻を取得します。
_tzset 時刻の環境変数 TZで時刻の外部変数を設定します。
_utime, _utime32, _utime64, _wutime, _wutime32, _wutime64 現在の時刻または構造体に格納された時刻の値を使用して、指定されたファイルの変更時刻を設定します。

Note

Microsoft C/C++ バージョン 7.0 を除くすべてのバージョンの Microsoft C/C++ と、すべてのバージョンの Visual C++ で、時刻の関数は、現在の時刻を 1970 年 1 月 1 日の午前 0 時から経過した秒数として返します。 Microsoft C/C++ バージョン 7.0 では、 time は、現在の時刻を 1899 年 12 月 31 日の午前 0 時から経過した秒数として返していました。

Note

Visual Studio 2005 より前の Visual C++ および Microsoft C/C++ のバージョンでは、time_tlong int (32 ビット) であったため、2038 年 1 月 19 日 3 時 14 分 07 秒 (UTC) を超えた日付には使用できませんでした。 現在、time_t は既定で __time64_t と同じです。ただし、 _USE_32BIT_TIME_T を定義すると、 time_t__time32_t and forces many time functions は call versions that take the 32-bit time_tを取得するバージョンを呼び出すために時刻の関数が多数必要になります。 詳細については、個々の時間関数のドキュメントの標準の型とコメントを参照してください

関連項目

カテゴリ別ユニバーサル C ランタイム ルーチン