我有一段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