如何在 Fortran 90 中刷新标准输出?
How to flush stdout in Fortran 90?
我在网上看到很多关于使用 Fortran 中的 flush
函数刷新输出的信息。我想知道,特别是对于 Fortran 90,特别是对于 stdout,这应该采用什么形式作为一行代码放入我的代码中?
我的猜测是flush(*)
。
flush()
不是一个函数,而是一个非标准的内部子程序,因此在调用语句中被调用
call flush(unit_number)
或 Fortran 2003 中的标准语句,因此作为语句调用
flush(unit_number)
通常,标准输出预先连接到单元 6,但为了确保您可以使用模块 iso_fortran_env
中的标准常量 output_unit
(参见 Standard input and output units in Fortran 90?)
这又需要 Fortran 2003。
请注意,现在几乎所有编译器都支持这些功能。但是如果你真的特别需要 26 岁的 Fortran 90,那么你必须查阅你的编译器手册,它为预连接的文件使用了哪些单元号。标准输出很可能是 6。
我在网上看到很多关于使用 Fortran 中的 flush
函数刷新输出的信息。我想知道,特别是对于 Fortran 90,特别是对于 stdout,这应该采用什么形式作为一行代码放入我的代码中?
我的猜测是flush(*)
。
flush()
不是一个函数,而是一个非标准的内部子程序,因此在调用语句中被调用
call flush(unit_number)
或 Fortran 2003 中的标准语句,因此作为语句调用
flush(unit_number)
通常,标准输出预先连接到单元 6,但为了确保您可以使用模块 iso_fortran_env
中的标准常量 output_unit
(参见 Standard input and output units in Fortran 90?)
这又需要 Fortran 2003。
请注意,现在几乎所有编译器都支持这些功能。但是如果你真的特别需要 26 岁的 Fortran 90,那么你必须查阅你的编译器手册,它为预连接的文件使用了哪些单元号。标准输出很可能是 6。