2014-05-13 133 views
0

我有一个参数在Fortran头文件是这样被声明:这个Fortran参数声明是做什么的,它为什么这样做?

parameter (param=((0-565))) 

PARAM好像总是在参数565基础教程进行估价不包括有关的信息是什么((0-565) )实际上意味着在这种情况下,我的谷歌并不适应这一挑战。

+3

如果param没有声明,那么隐式规则会让我觉得它得到值'-565.0',如果声明为整数'-565' – steabert

+0

任何想法为什么有人会设置它((0-595) )而不是将它设置为0595? –

+1

假设隐式类型的普及,我会认为它是一种类型,'0.565'是指,但是'-'和'.'很难交换。或者程序员喜欢括号,并有一个失踪的手指或东西。或者有一个规则是在负数前加上0.你的猜测和我的一样好,或者更好,因为你有其他的代码,所以你可以看到参数在做什么。 – steabert

回答

2

代码

program main 
implicit none 
integer :: param 
parameter (param=((0-565))) 
! integer, parameter :: param = -565 ! suggest replacing two lines above with this 
print*,"param =",param 
end program main 

套PARAM到-565,如通过G95和gfortran证实。注释行使用建议的现代语法,假定param是整数数据类型。

+0

谢谢。我无法更改我正在使用的基础包,但是我很欣赏这个建议。 –