一起创业网-为互联网创业者服务

fortran子程序怎么保存

在Fortran中,子程序的保存通常通过以下两种方式进行:

使用`save`关键字

在子程序或函数中添加`save`关键字,这样可以在子程序执行期间保留变量的值,即使子程序执行结束后,这些变量的值也不会丢失。

示例代码如下:

```fortran

Program testsave

implicit none

integer :: i, n = 10

do i = 1, n

call sub(i)

end do

End program testsave

Subroutine sub(a)

implicit none

integer :: a

real, save :: s

s = s + a

print*, s

End subroutine sub

```

在这个例子中,变量`s`在子程序`sub`中被声明为`save`,因此它的值在连续的函数调用中会保持累加。

在过程中声明的同时赋初值

在子程序中声明变量时直接赋初值,这样每次调用子程序时,变量都会被初始化为指定的值。

示例代码如下:

```fortran

Program testsave

implicit none

integer :: i, n = 10

do i = 1, n

call sub(i)

end do

End program testsave

Subroutine sub(a)

implicit none

integer :: a

real :: s = 0.0

s = s + a

print*, s

End subroutine sub

```

在这个例子中,变量`s`在每次调用子程序`sub`时都会被初始化为0.0,然后累加传入的参数`a`。

建议

如果需要在子程序执行期间保持变量的值,建议使用`save`关键字。

如果变量在每次调用子程序时都需要重新初始化,建议在使用声明的同时赋初值的方法。

希望这些信息对你有所帮助。