這應該很簡單,但我無法設法讀入Fortran中的浮點數。我的程序test.f看起來是這樣的:在Fortran中讀取浮點數時出錯
PROGRAM TEST
open(UNIT=1,FILE='test.inp')
read(1,'(f3.0)')line
STOP
END
輸入文件test.inp
只包含一個單一的浮動:1.2
現在我testfile的的編譯去罰款,但是當我運行它,我得到一個錯誤:
At line 4 of file test.f (unit = 1, file = 'test.inp')
Fortran runtime error: Expected REAL for item 1 in formatted transfer, got INTEGER
(f3.0)
^
我嘗試不同的代碼修改,也對谷歌搜索的錯誤消息,但沒有結果。任何幫助將不勝感激!
問候, 弗蘭克
雖然這不能回答這個問題,但您應該真正聲明您使用的所有變量的類型。在你的代碼中,你沒有說明'line'的類型。在程序,函數,子程序或模塊的頂部(在任何「use」語句之前)包含'implicit none'行是一個好習慣。隱式類型聲明,這是你用過的,可能會導致很多令人討厭的,很難發現的錯誤。 – Chris
這實際上確實回答了這個問題。 –