我是Fortran的血腥初學者。Fortran:f和F之間的區別
我想知道:是什麼的Fortran文件.F和.F擴展之間的區別。我非常瞭解:f是免費的,F是固定的。
什麼是自由和固定實際上是什麼意思,爲什麼他們完全搞砸了編譯過程? (我正在使用gfortran和ifort)。
我使用google搜索fortran f和F之間的區別。我對結果不滿意,這就是爲什麼我轉向使用stackoverflow。
如果你能提出一個很好的參考來閱讀這個,我會很樂意這樣做。
我是Fortran的血腥初學者。Fortran:f和F之間的區別
我想知道:是什麼的Fortran文件.F和.F擴展之間的區別。我非常瞭解:f是免費的,F是固定的。
什麼是自由和固定實際上是什麼意思,爲什麼他們完全搞砸了編譯過程? (我正在使用gfortran和ifort)。
我使用google搜索fortran f和F之間的區別。我對結果不滿意,這就是爲什麼我轉向使用stackoverflow。
如果你能提出一個很好的參考來閱讀這個,我會很樂意這樣做。
據我所知,.f
和.F
都是與FORTRAN 77固定格式相關的擴展。固定格式限制爲72列,其中前六列用於特殊目的。例如。在位置6處的&
指示從前一行開始的行延續。
自由格式與Fortran 90一起引入,通常由.f90
和.F90
表示。對於自由格式,最多可以使用132列,並且不存在特殊列。行的延續由行末尾的&符表示。
文件擴展名中的大寫字母通常會打開預處理器。
請注意,這些約定可以被大多數編譯器的編譯選項覆蓋。
這是依賴於編譯器,應該可能不依賴。通常資本後綴表明,應該使用預處理。自由格式和固定格式之間的區別通常由.f90(免費)與.f(固定)進行區分。
由於這是依賴於編譯器的,所以好的文檔將是您的編譯器之一。如果你碰巧使用gfortran,你可以看看它的options和preprocessing的部分。
在gfortran,自由形式(COLS 7沒有特殊的意義,72)是由編譯器開關-ffree形式設置,並且具有無關.F或.F文件後綴。 .f和.F之間的區別在於後者通過預處理器,其中最常見的用法是允許類似C的#define語句。例如:
#define MAXN 100
program example
integer N(MAXN)
end
將編譯如果是.F但如果是.F
gfortran當然認識到「.f表示固定,.f90意味着免費」約定由其他答案指出。 – agentp
可惜不是,我不能標記兩個答案爲*認同的答案*。你的回答也很有用。謝謝! – seb