我在网上看到很多使用Fortran中的flush
函数来刷新输出。我想知道,特别是对于Fortran 90,特别是stdout,这应该采用什么形式作为单行代码放入我的代码?
我的猜测是flush(*)
。
答案 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。