РЕДАКТИРОВАТЬ : зависит от компилятора: см. Мой РЕДАКТИРОВАТЬ ниже. РЕДАКТИРОВАТЬ КОНЕЦ
Второе предложение Мика Шарпа о том, что оно будет оценено во время выполнения. просто из любопытства я скомпилировал PI=4.D0*DATAN(1.D0)
с компилятором ftn77 Silverfrost и посмотрел на сгенерированный двоичный файл. соответствующая часть выглядит так:
fld1 ; push 1.D0 onto the FPU register stack
call ATAN_X
fmul dbl_404000 ; multiply by 4.D0
так что в действительности здесь нет никакой хитрости компилятора.
это, конечно, может отличаться от другого компилятора (например, g77). РЕДАКТИРОВАТЬ : по-видимому, с g77 (интерфейс Fortran77 для gcc) возможно (и включено по умолчанию) использовать встроенную в gcc функцию atan до auto сложите PI=4.D0*DATAN(1.D0)
в постоянную . РЕДАКТИРОВАТЬ КОНЕЦ