我有一段Fortran代碼,我不確定它是哪個標準 - '77,'90或'95。是否有一個標準工具來確定它所服從的標準?如何識別fortran標準 - '77,'90或'95?
9
A
回答
23
有可能是自動化的工具,但我的方法基本上是啓發式:
- 做註釋使用的第一列(F77)一
!
就行了(F90 +)的任何地方或一個C
? - Do循環使用
do
..end do
(F90 +)或do
..continue
(F77)? - 在行尾(F90 +)或第6列(f77)末尾是否繼續使用
&
? - 代碼是否使用
module
或type
結構(F90)? - 如果代碼使用數組,它是作爲單個結構(F90)還是總是使用循環(F77)?
- 是否使用動態內存(使用
allocatable
或pointer
方法)(F90)?
通常這些足以區分F90和F77。 Fortran 90與FORTRAN 77之間的差異比Fortran 90與Fortran 95之間的差異大得多,所以我通常停在那裏。
2
如果您有權訪問GNU Fortran(gfortran),您可以嘗試使用--std
的不同選項進行編譯,並查看哪一個可以工作。你可以找到方言選項here的詳細信息。
2
我加入的FORTRAN 2003和2008的功能(這只是回到我的頭)
程序是否參數化衍生的數據類型(FORTRAN 2003) 如果數組構造函數使用方括號[] (fortran 2003.) 如果你看到,有提供使用cobrays(fortran 2008)
雖然許多編譯器有特殊功能(如貝塞爾函數)作爲擴展的一部分,但它是一個真正的fortran 2008功能。
(如果任何差異讓我知道我會編輯)
相關問題
- 1. FORTRAN 95準確度很大的除法
- 2. 將Fortran 77轉換爲Fortran 95
- 3. 如何在Fortran 90/95中使用Fortran 77子例程?
- 4. fortran 95圍繞自己的
- 5. Fortran 95的數據列表
- 6. 數值精度Fortran 95中:
- 7. Fortran格式化90/95
- 8. 如何識別.ppt文件是2003格式還是97格式或95格式
- 9. 如何識別Excel文件是否符合Excel 95或Excel 97規範?
- 10. Android:如何通過標記或標識識別ImageView
- 11. Android的活動識別標準錯誤
- 12. 標識識別 - 如何提高性能
- 13. 如何識別SQL Server 2008標準的版本號
- 14. JavaScript標準樣式不識別笑話
- 15. iPhone:如何讓VoiceOver識別標準手勢
- 16. 如何識別x509標誌
- 17. Fortran 95:數組函數返回。越界
- 18. Fortran 95的缺失表達錯誤
- 19. 在fortran中初始化矢量95
- 20. 在Fortran 95中讀取多個文件
- 21. 求解的Fortran線性方程組95
- 22. fortran 77在95程序中的接口
- 23. Fortran中的函數接口90/95
- 24. 如何讓IE9識別IE9標準的網頁?
- 25. UITextInput - 如何讓它添加標準選擇手勢識別器?
- 26. 如何手動取消MKMapView標準手勢識別器
- 27. Fortran 90/95轉換器軟件到Fortran 77
- 28. Fortran 95編譯器是否可以編譯Fortran 77代碼?
- 29. 如何在Fortran 95中使用子程序?
- 30. 如何在Fortran 95的不同文件中包含模塊?
幾個點的區分的固定和自由形式,而不是的Fortran 77從的Fortran 90固定源形式(與在第一列C,&在第6列等),即使在Fortran 2008中也是完全合法的。 – 2017-02-16 13:06:08