我正在使用Fortran编写程序,我需要一种计算程序持续时间到毫秒的方法。我一直在使用函数“date_and_time”,这给我留下了一个数组,其中包含系统时间的数小时,分钟,秒和毫秒。当您有小时,分钟,秒和毫秒时计算持续时间
我相信我可以在我的程序开始时调用该函数来存储当前时间,然后在程序结束时再次调用该函数以存储最新时间。但在此之后,我将如何计算持续时间?我尝试减去这些值,但是当秒数通过时,毫秒重置,就像一分钟过去时重置的秒数一样。怎么会是最好的方法来解决这个问题呢?
下面是程序:
PROGRAM TEST_TIME_AND_DATE
INTEGER I
REAL J
INTEGER TIME_A(8), TIME_B(8)
CALL DATE_AND_TIME(VALUES=TIME_A)
PRINT '(8I5))', TIME_A
DO I = 0, 400000000
J = I * I - J
END DO
CALL DATE_AND_TIME(VALUES=TIME_B)
print '(8I5))', TIME_B
END PROGRAM TEST_TIME_AND_DATE
这里是结果:
2011 6 11 -300 9 14 49 304
2011 6 11 -300 9 14 50 688
我不知道该怎么办这里,谢谢。
如果这两个数字跨越一个边界,我不确定这会工作。如果你的开始日期是12/30,结束日期是1/2,那么减去月份会给你-11,减去日期会给你-28。 – eaolson 2011-06-11 14:31:28
@eaolson添加了关于它的注释。 – Howard 2011-06-11 14:37:12
谢谢,这正是我需要的! – Anthony 2011-06-11 14:58:06