2016-05-26 138 views
3

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

回答

10

flush()不是一个函数,但无论是非标准的内建子进程,因此在调用语句

call flush(unit_number) 

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

flush(unit_number) 

通常,标准输出被预连接到单元6,但可以肯定可以从模块iso_fortran_env使用标准的恒定output_unit(见Standard input and output units in Fortran 90?

这又需要Fortran 2003.

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