[英]How do I flush output to file after each write with a gfortran Fortran 90 program?
[英]How to flush stdout in Fortran 90?
我在網上看到很多在Fortran中使用flush
函數來刷新輸出。 我想知道,特別是對於Fortran 90,特別是對於stdout,這應該采用什么形式作為單行代碼放入我的代碼?
我的猜測是flush(*)
。
flush()
不是函數,而是非標准的內部子例程,因此在調用語句中調用
call flush(unit_number)
或Fortran 2003中的標准聲明,因此作為聲明調用
flush(unit_number)
通常,標准輸出被預連接到單元6,但可以肯定,你可以使用標准的恆定output_unit
從模塊iso_fortran_env
(見標准輸入和輸出單元Fortran 90中? )
這再次需要Fortran 2003。
請注意,現在幾乎所有編譯器都支持這些功能。 但是如果你真的需要26年前的Fortran 90,那么你必須查閱編譯器的手冊,它用於預連接文件的單元號。 標准輸出很可能是6。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.