模块是类型声明,数据声明和过程的集合。基本语法为:
module module_name use other_module_being_used ! The use of implicit none here will set it for the scope of the module. ! Therefore, it is not required (although considered good practice) to repeat ! it in the contained subprograms. implicit none ! Parameters declaration real, parameter, public :: pi = 3.14159 ! The keyword private limits access to e parameter only for this module real, parameter, private :: e = 2.71828 ! Type declaration type my_type integer :: my_int_var end type ! Variable declaration integer :: my_integer_variable ! Subroutines and functions belong to the contains section contains subroutine my_subroutine !module variables are accessible print *, my_integer_variable end subroutine real function my_func(x) real, intent(in) :: x my_func = x * x end function my_func end module