2
3
4
5
6
7
8
9
10
11
15 use dc_message, only: messagenotify
17 use dc_trace, only: beginsub, endsub
20 implicit none
21 type(DC_CAL_DATE), intent(out):: date
22
23
24
25
26 logical, intent(out), optional:: err
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45 integer :: date_time_values(1:8)
46 character(5) :: zone_raw
47
48 integer:: year
49 integer:: month
50 integer:: day
51 integer:: hour
52 integer:: min
53 real(DP):: sec
54 character(TOKEN):: zone
55
56 integer:: stat
57 character(STRING):: cause_c
58 character(*), parameter:: subname = 'DCCalDateCurrent1'
59continue
60 call beginsub( subname )
62 cause_c = ''
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77 call date_and_time(zone=zone_raw, values=date_time_values)
78 zone = zone_raw(1:3) // ":" // zone_raw(4:5)
79
80
81
82
83
85 & date_time_values(1), date_time_values(2), date_time_values(3), &
86 & date_time_values(5), date_time_values(6), &
87 & real( date_time_values(7),
dp ), &
88 & date, zone, err = err )
89 if ( present(err) ) then
90 if ( err ) then
92 goto 999
93 end if
94 end if
95
96
97
98
99999 continue
100 call storeerror( stat, subname, err, cause_c )
101 call endsub( subname )
type(dc_cal_date), target, save, public default_date
subroutine, public storeerror(number, where, err, cause_c, cause_i)
integer, parameter, public dc_ealreadyinit
integer, parameter, public dc_noerr
integer, parameter, public dc_ebaddate
integer, parameter, public token
単語やキーワードを保持する文字型変数の種別型パラメタ
integer, parameter, public string
文字列を保持する 文字型変数の種別型パラメタ
integer, parameter, public dp
倍精度実数型変数