Fortran中的函数(function)和子程序(subroutine)
(2014-05-18 10:53:56)分类: Fortran |
子程序没有返回值,而函数有返回值。
在不改变程序中各变量值、需要获得一个返回值的情况下,使用 function,另外,function
可以直接用在赋值语句中
如果需要改变调用参数的值,全局变量的值等情况下,使用 subroutine。
如果需要改变调用参数的值,全局变量的值等情况下,使用 subroutine。
***举例:他们在使用的时候的区别
a = f(x) + b,这里的f(x)要定义为函数。
如果是函数f(x)的功能是初始化矩阵(系数矩阵),那么可以通过以下的两种方法实现:
1)这个是调用用子程序
a = f(x) + b,这里的f(x)要定义为函数。
如果是函数f(x)的功能是初始化矩阵(系数矩阵),那么可以通过以下的两种方法实现:
1)这个是调用用子程序
call init_coefficient_matrix(A)
2)你也可以直接通过函数的返回值来赋值
A = init_coefficient_matrix(*)
2)你也可以直接通过函数的返回值来赋值
A = init_coefficient_matrix(*)