假设我想在 Fortran 文件中追加一行。使用最新版本(4.7)gfortran
,我发现这有效:
program test
integer :: lun=10, i=0
open(FILE='test.dat', UNIT=lun)
do
read(lun, *, END=20) i
print *, i
end do
20 backspace(lun)
write(lun, *), i+1
end program test
但是gfortran 4.4
,它会覆盖最后一行。要追加,我发现我需要使用
20 continue
而不是backspace
.
那是怎么回事?您将如何在实际程序中处理这个问题?