我有一个整数数组
int(4) :: idate ! 1979 March 1st 00hrs
write(*,*)idate ! prints ' 0 3 1 1979'
我想将idate
保存在另一个变量(仅限整数/整数数组)中,该变量将日期打印为:
1979030100
不将其更改为字符/字符串。
可以这样做。请原谅我,如果它是微不足道的,但我花了很多时间在它上面。
答案 0 :(得分:1)
你可以这样做:
integer :: date_as_int
...
date_as_int = idate(1)*10**6 + idate(2)*10**4 + idate(3)*10**2 + idate(4)
你甚至可以逃脱
date_as_int = sum(idate*10**[6,4,2,0])
或
date_as_int = dot_product(idate, 10**[6,4,2,0])
方括号语法来自Fortran 2003.使用较旧的编译器[6,4,2,0]
应替换为(/6,4,2,0/)
。