另一个Fortran 问题# Programming - 葵花宝典
m*g
1 楼
对fortran不熟,只是有时候需要读一读。有这样一段代码,很不理解,望能人予以解答
c Area.f --- To calculate area, radius is given
#ifndef CONSTANT_PI
# define CONSTANT_PI 3.14159
#endif
real*4 area
real*4 r
r = 1
area = CONSTANT_PI*r*r
write(6, *) area
end
我看到别人能运行,用的是cygwin下的f77编译的。觉得很奇怪,我觉得ifndef和
define都是c下面的东西啊,怎么能在fortran里面用呢。我自己试的时候,编译器说第
一行就有问题。然后我就把第一行和第三行都去掉,编译通过。但是运行后,area的数
值不是3.14159而是一个乱七八糟的东西。
请问,是不是我的f77配置有问题,是不是通过某种配置之后,就能够认知ifndef。还
有define是fortran 77里的关键字吗?谢谢
c Area.f --- To calculate area, radius is given
#ifndef CONSTANT_PI
# define CONSTANT_PI 3.14159
#endif
real*4 area
real*4 r
r = 1
area = CONSTANT_PI*r*r
write(6, *) area
end
我看到别人能运行,用的是cygwin下的f77编译的。觉得很奇怪,我觉得ifndef和
define都是c下面的东西啊,怎么能在fortran里面用呢。我自己试的时候,编译器说第
一行就有问题。然后我就把第一行和第三行都去掉,编译通过。但是运行后,area的数
值不是3.14159而是一个乱七八糟的东西。
请问,是不是我的f77配置有问题,是不是通过某种配置之后,就能够认知ifndef。还
有define是fortran 77里的关键字吗?谢谢