如何在Fortran 90中刷新stdout?

时间:2016-05-26 21:22:39

标签: fortran fortran90

我在网上看到很多使用Fortran中的flush函数来刷新输出。我想知道,特别是对于Fortran 90,特别是stdout,这应该采用什么形式作为单行代码放入我的代码?

我的猜测是flush(*)

1 个答案:

答案 0 :(得分:12)

flush()不是函数,而是非标准的内部子例程,因此在调用语句中调用

 call flush(unit_number)

或Fortran 2003中的标准语句,因此作为语句调用

flush(unit_number)

通常,标准输出已预先连接到单元6,但为了确保您可以使用模块output_unit中的标准常量iso_fortran_env(请参阅Standard input and output units in Fortran 90?

这又需要Fortran 2003。

请注意,现在几乎所有编译器都支持这些功能。但是如果你真的需要26年前的Fortran 90,那么你必须查阅编译器的手册,它用于预连接文件的单元号。标准输出很可能是6。