我正在尝试从 intel ifort 转移到 IBM xlf,但是在读取“未格式化的输出数据”(未格式化的意思是它们的长度不同)时,出现了问题。这是一个例子:
program main
implicit none
real(8) a,b
open(unit=10,file='1.txt')
read (10,*) a
read (10,*) b
write(*,'(E20.14E2)'),a,b
close(10)
end program
1.txt:
0.10640229631236
8.5122792850319D-02
使用 ifort 我得到输出:
0.10640229631236E+00
0.85122792850319E-01
使用 xlf 我得到输出:
' in the input file. The program will recover by assuming a zero in its place.e invalid digit '
0.10640229631236E+00
0.85122792850319E-01
由于1.txt中的数据是未格式化的,所以我无法使用固定的格式来读取数据。有谁知道如何解决这个警告?