在FORTRAN中写在同一行

use*_*002 10 fortran

在Fortran中,每次使用WRITE新行都会生成.为了控制正在执行的程序的工作,我想在屏幕上写入变量的当前值,但总是在同一行上(擦除前一个值并从行的开头开始).就是这样的

 1    CONTINUE
      "update the value of a"
      WRITE(*,*) a
      BACKSPACE "screen"
      GOTO 1
Run Code Online (Sandbox Code Playgroud)

像WRITE(*,*,ADVANCE='NO')(不管怎样)不正确的东西并不是我需要的东西:这会a在很长的路线上一个接一个地写出所有的值.

Kyl*_*nos 9

我为你想要的东西展示的技巧如下

do l=1,lmax
   ...update a...
   write(*,'(1a1,<type>,$)') char(13), a
enddo
Run Code Online (Sandbox Code Playgroud)

<type>你的格式说明符在哪里a(即i0整数).

关键是char(13)回车符,$格式描述符.我真的不知道是否有名字$,我只知道它适用于在屏幕上显示 - 输出到文件你得到a每一行.