我正在尝试将值的文本文件读入Fortran。值本身由空格分隔:
2.606981379902478 .3902892116613899 24.99728028637431
2.38197636218735 .3006054545842558 24.23058044177526
2.321277032042287 .3050883909675102 23.19812552848228
我正在尝试打开文件并将每行中的值读入双精度浮点数组,然后再将其写回屏幕。
IMPLICIT NONE
PARAMETER, INTEGER :: DP=KIND(1.0D0)
REAL(DP), DIMENSION(3) :: vector
OPEN(UNIT=11, FILE="results.txt", FORM="FORMATTED")
DO
READ(11, IOSTAT=k) vector
IF (k .LT. 0) THEN
EXIT
END IF
WRITE(*,*) vector
END DO
但是,它写出的值与我正在读取的值不匹配。例如,对于第一行,它会打印
1.4821969375237396E-323 6.9022845013543139E-310 2.0735816580202116E-317
对于我正在阅读的值与其打印出来的值之间的差异有什么解释?我已经在网上看了很多,我找不到解释或解决方案。如果它有帮助,我正在使用fortran 90并使用gfortran进行编译。