FORTRAN按引用返回数组

FORTRAN按引用返回数组,fortran,Fortran,我很清楚“按值传递”和“按引用传递”是什么意思,但在相反的方向上会发生什么呢 e、 g: 如果我调用这个子程序 double precision, dimension(1:ngrid) :: flux double precision, parameter :: a = 1, c = 5 double precision, dimension(1:ngrid) :: u(:) = 2 call get_flux(flux,ngrid,u,a,c) 子程序是否传回引用或数组的副本?

我很清楚“按值传递”和“按引用传递”是什么意思,但在相反的方向上会发生什么呢

e、 g:

如果我调用这个子程序

double precision, dimension(1:ngrid) :: flux
double precision, parameter :: a = 1, c = 5
double precision, dimension(1:ngrid) :: u(:) = 2
call get_flux(flux,ngrid,u,a,c)       

子程序是否传回引用或数组的副本?

我不知道有哪种编程语言在一个方向上通过引用传递参数时,不会在另一个方向上通过引用传递相同的参数。当然,在Fortran中,参数似乎是通过引用在两个方向上传递的。我这样写似乎是因为标准不要求参数通过引用传递,只是程序的行为就好像它们是通过引用传递的一样。一般来说,有时编译器会进行复制,可能是在传递数组节的情况下。

我不知道有哪种编程语言在一个方向上通过引用传递参数时,不会在另一个方向上通过引用传递相同的参数。当然,在Fortran中,参数似乎是通过引用在两个方向上传递的。我这样写似乎是因为标准不要求参数通过引用传递,只是程序的行为就好像它们是通过引用传递的一样。一般来说,有时编译器会进行复制,可能是在传递数组节的情况下。

我不知道有哪种编程语言在一个方向上通过引用传递参数时,不会在另一个方向上通过引用传递相同的参数。当然,在Fortran中,参数似乎是通过引用在两个方向上传递的。我这样写似乎是因为标准不要求参数通过引用传递,只是程序的行为就好像它们是通过引用传递的一样。一般来说,有时编译器会进行复制,可能是在传递数组节的情况下。

我不知道有哪种编程语言在一个方向上通过引用传递参数时,不会在另一个方向上通过引用传递相同的参数。当然,在Fortran中,参数似乎是通过引用在两个方向上传递的。我这样写似乎是因为标准不要求参数通过引用传递,只是程序的行为就好像它们是通过引用传递的一样。一般来说,也就是说,如果传递了数组部分,编译器有时会进行复制

double precision, dimension(1:ngrid) :: flux
double precision, parameter :: a = 1, c = 5
double precision, dimension(1:ngrid) :: u(:) = 2
call get_flux(flux,ngrid,u,a,c)