kind - double precision fortran 77
Fortran: configuración de tipo/precisión de una variable en tiempo de ejecución (1)
No, no es posible, tipo, clase y rango deben ser conocidos. Sin embargo, puede definir interfaces genéricas de subrutinas con implementaciones para todos los tipos que espera pasar a una rutina en tiempo de ejecución.
¿Es posible hacer una precisión de una variable en sí misma una variable que se definirá en un tiempo de ejecución? Diga, si intento compilar:
SUBROUTINE FOO( VARIABLE, PRECISION_VALUE )
IMPLICIT NONE
INTEGER(4) :: PRECISION_VALUE
INTEGER(PRECISION_VALUE) :: VARIABLE
RETURN
END
la salida del compilador es:
error #6683: A kind type parameter must be a compile-time constant. [PRECISION_VALUE]
INTEGER(PRECISION_VALUE) :: VARIABLE
--------------^
compilation aborted for trial.f (code 1)
De todos modos alrededor de eso? Entiendo que no se puede usar ningún valor arbitrario para KIND
, pero esa no es mi preocupación en esta pregunta.