!看下面这个(gfortran / pgf90 / intel fortran都可用,其它因为手头上没有其它编译器所以没测试,应该行),函数bar就是作为过程foo的一个参数,并且注意要在用到的地方把函数声明都写上,如果不写的话编译器自动推导给出个错误的类型。
-----------------------------------------
function bar(i)
implicit none
integer(kind=4) :: i
integer(kind=4) :: bar
bar = i+1
return
end function bar
subroutine foo(ffunc,i)
implicit none
integer(kind=4),external :: ffunc
integer(kind=4) :: i
print *,ffunc(i)
end subroutine foo
program one
implicit none
integer(kind=4),external :: bar
external :: foo
call foo(bar,3)
end program one
【 在 xheliu (黄土地) 的大作中提到: 】
: 怎么传法?结构体数组维数也是变化的,用整型参数控制。