A constant expression is made up of explicit constants and parameters and the FORTRAN operators. Each operand is either itself another constant expression, a constant, a symbolic name of a constant, or one of the intrinsic functions called with constant arguments.
Examples: Constant expressions:
PARAMETER (L=29002), (P=3.14159), (C='along the ')
PARAMETER ( I=L*2, V=4.0*P/3.0, S=C//'riverrun' )
PARAMETER ( M=MIN(I,L), IA=ICHAR('A') )
PARAMETER ( Q=6.4Q6, D=2.3D9 )
K = 66 * 80
VOLUME = V*10**3
DO I = 1, 20*3
There are a few restrictions on constant expressions:
Constant expressions are permitted wherever a constant is allowed, except they are not allowed in DATA or standard FORMAT statements.
Constant expressions are permitted in variable format expressions. @
Exponentiation to a floating-point power is not allowed; a warning is issued.
Example: Exponentiation to a floating-point power is not allowed:
demo% cat ConstExpr.f
parameter (T=2.0*(3.0**2.5))
write(*,*) t
end
demo% f77 ConstExpr.f
ConstExpr.f:
MAIN:
"ConstExpr.f", line 1: Warning:
parameter t set to a nonconstant
demo% a.out
31.1769
demo%