マニュアルページ date_and_time.3f
名前
date_and_time - 文字形式の日付と時刻を戻す
形式
subroutine date_and_time (date, time, zone, values)
character*8 date
character*10 time
character*5 zone
integer*4 values(8)
機能説明
このルーチンは、Fortran 90 のルーチン DATE_AND_TIME
の Fortran 77 版であり、 西暦 2000 年問題に対応しています。
The DATE_AND_TIME サブルーチンは、リアルタイムクロックと日付
からデータを戻します。現地時間と、現地時間と世界標準時 (UTC)
(グリニッジ平均時 (GMT) とも呼ばれる) との差が戻されます。
DATE_AND_TIME サブルーチンでは次の引数を使用できます。
date 文字型のスカラーでなければなりません。この値の長さ
は 少なくとも 8 文字でなければなりません。この引数
は出力引数であり、左端から 8 文字が形 式 YYYYMMDD
の 値に設定されます。YYYY は 4 桁の年、MM は月、そ
して、DD は日を示します。使用できる日付が な い 場
合、date は空白に設定されます。
time 文字型のスカラーでなければなりません。この値の長さ
は少なくとも 10 文字でなければなりません。この引数
は出力引数であり、 左 端 か ら 10 文 字 が 形 式
hhmmss.sss の 値 に設定されます。hh は時間、mm は
分、そして、ss.sss は秒とミリ秒を示します。使用 で
き る ク ロックがない場合、time は空白に設定されま
す。
zone 文字型のスカラーでなければなりません。この値の長さ
は 少なくとも 5 文字でなければなりません。この引数
は出力引数であり、左端から 5 文字が形式 _hhmm の値
に 設定されます。hh と mm は、それぞれ、UTC との差
の時間と分の部分を示します。使用できるクロックがな
い 場合、zone は空白に設定されます (注: 現地時間は
オペレーティングシステムまたは TZ 環境変数 (あるい
は、その両方) によって設定されます)。
values 基本整数型であり、次元数が 1 でなければな り ま せ
ん。 この値は出力引数であり、少なくとも 8 つの要素
を持たなければなりません。values に戻される値は 次
のとおりです。
値 戻り値
values(1) 年 (つまり、1990)
values(2) 月 (1-12)
values(3) 日 (1-31)
values(4) UTC との時間の差 (分単位)
values(5) 時間 (0 to 23)
values(6) 分 (0 to 59)
values(7) 秒 (0 to 60)
values(8) ミリ秒 (0 to 999)
使用例
integer*4 date_time(8)
character(len=10) big_ben(3)
call date_and_time(big_ben(1), big_ben(2), big_ben(3), date_time)
print *,'date_time array values:'
print *,'year=',date_time(1)
print *,'month_of_year=',date_time(2)
print *,'day_of_month=',date_time(3)
print *,'time difference in minutes=',date_time(4)
print *,'hour of day=',date_time(5)
print *,'minutes of hour=',date_time(6)
print *,'seconds of minute=',date_time(7)
print *,'milliseconds of second=',date_time(8)
print *, 'DATE=',big_ben(1)
print *, 'TIME=',big_ben(2)
print *, 'ZONE=',big_ben(3)
end
このプログラムが 1997 年 10 月 10 日に米国のカリフォルニアで
実行された場合は、次のように出力します
date_time array values:
year= 1997
month_of_year= 10
day_of_month= 10
time difference in minutes= -420
hour of day= 16
minutes of hour= 35
seconds of minute= 37
milliseconds of second= 708
DATE=19971010
TIME=163537.708
ZONE=-0700
ファイル
libfui.a
関連項目
idate(3f), ctime(3F), fdate(3F), および 『Fortran ライブラリ
・リファレンス』