Я использую Intel Visual Fortran. Проблема, с которой я имею дело, имеет много ПАРАМЕТРОВ, и я хочу избежать их повторного объявления и инициирования в начале каждой подпрограммы.
Есть ли способ инициализировать эти ПАРАМЕТРЫ с помощью МОДУЛЕЙ?
Конечно, ответ ДА, но некоторые встроенные функции не принимаются в операторе инициализации.
Вот простой пример кода,
MODULE mod
IMPLICIT NONE
REAL, PARAMETER :: x = SQRT ( 4 )
END MODULE
PROGRAM prog
USE mod
IMPLICIT NONE
PRINT *, x
END PROGRAM
После компиляции компилятор показывает мне эту ошибку:
Error #6362: The data types of the argument(s) are invalid.
[SQRT] Source1.f90
Хотя использование ABS ( )
не сопровождается этой ошибкой, но SIN ( )
приводит.