本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

[VC1x] 時間関数の使用期限と注意点

文書番号: 401793

最終更新日: 1999/03/19


この資料は以下の製品について記述したものです。


この記事は、以前は次の ID で公開されていました: JP401793

概要

この資料は、時間を処理する C ランタイム ライブラリ関数の使用期限と注意点
について説明したものです。

詳細

時間を処理するプログラムでは、まずハードウェアや OS そのものが扱える期間を考慮 する必要があります。
過去については、DOS では 1980年より前の時間をサポートしていません。
未来については、OS により異なりますが関数の限界が先になりますので、必要に
応じて OS の仕様をご確認ください。
時間関数は、万国標準時 (UCT) 1970/01/01 00:00:00 からの経過時間を秒単位で
地方標準時への修正を伴い処理します。
環境変数 TZ で設定する地方標準時のデフォルトは日本時間 (JST-9) です。_tzset 関数 のマニュアル、ヘルプには太平洋標準時 (PST8PDT) とありますが、これは誤記です。 万国標準時と日本時間の差は 32400 秒です。
time_t 型は、2 つのインクルード ファイル (times.h types.h) に定義されて
いますが types.h における定義に誤りがありますので times.h を使用してください。 types.h もインクルードする場合は、先に times.h をインクルードしてください。
  <誤> typedef unsigned long time_t;
  <正> typedef long time_t;
時間関数で使用する time_t 型の定義は signed long ですので、0 から 2,147,483,647 ( LONG_MAX ) まで扱えます。
各時間関数の使用期限は以下の通りです。
  関数名     変換元                              変換後
  ------------------------------------------------------------------
  time       システム時間 2038/01/19 12:14:07    LONG_MAX
  _ftime     システム時間 2038/01/19 12:14:07    LONG_MAX
  ctime      LONG_MAX                            2038/01/19 12:14:07
  localtime  LONG_MAX                            2038/01/19 12:14:07
  gmtime     LONG_MAX                            2038/01/19 03:14:07
  mktime     2038/01/19 12:14:07                 LONG_MAX
  asctime    tm 構造体で許される値
  strftime   tm 構造体で許される値
ctime, asctime 関数は、静的に割り当てられた共通のバッファ (文字列) を使用します。 ctime, gmtime, localtime, mktime 関数は、静的に割り当てられた共通のバッファ
(tm 構造体) を使用します。
関数の呼び出しにより、以前の呼出結果は破壊されますので必要に応じて別のバッファ にコピーしてください。

関連情報

サポート技術情報


文書番号: 409106
タイトル: [VC60] 地域依存の考慮 (時間がずれる現象)
文書番号: 412735
タイトル: [VC60] 時間関数の使用期限と注意点

Keywords: KBINFO VC10 VC15 KB401793
Technology: kbAudDeveloper kbvc100 kbVCsearch

inserted by FC2 system