欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Fortran中使用Module、Type和Pointer示例

程序员文章站 2022-07-15 21:11:14
...

程序代码如下:

-----------------------------------------------------------------------------------------------------------------

!define a module
module college
implicit none
type,public:: information
        integer, pointer::numclg    !number of colleges
        integer, pointer::nummjr    !number of majors
end type information

type(information),public,target::info

end module college

 

!initializing the module
module college_init
use college
contains
subroutine init ()
        print *,"initatilizing..."
        allocate(info%numclg)
        allocate(info%nummjr)
end subroutine init

subroutine release ()
        print *,"releasing..."
        deallocate(info.numclg)
        deallocate(info.nummjr)
end subroutine release
end module college_init

 

!the main program
program main
use college
use college_init, only: init

integer,pointer::a,b
integer,pointer::c,d

call init()

a=>info.numclg
b=>info.numclg
c=>info.nummjr
d=>info.nummjr

a=5
c=20

print *,"a=",a,",b=",b,",c=",c,",d=",d

end program main
-----------------------------------------------------------------------------------------------------------------

打印结果如下:

 initatilizing...
 a=           5 ,b=           5 ,c=          20 ,d=          20

 

相关标签: Fortran