Fortran Coder

标题: 关于返回值问问题 [打印本页]

作者: 我是处手    时间: 2014-7-30 02:25
标题: 关于返回值问问题
M_zj(x(2),x(3),x(4),x(5),x(6))传递参数后计算值M_zj=16511.26
但是返回
G(11)=M_zj(x(2),x(3),x(4),x(5),x(6))  - 2.0E5显示4494504.,别的子函数返回值正确,同样的代码结构,不知道怎么回事,

谁给说下原因,十万火急

作者: 楚香饭    时间: 2014-7-30 07:25
数据类型不同吧,注意实参虚参类型,精度是否一致。返回值,等号左侧,类型精度是否一致。
作者: 我是处手    时间: 2014-8-1 11:50
这个问题搞定了,原来在约束条件里,不想用subroutine,用的function,换成subroutine问题就没有了
作者: fcode    时间: 2014-8-1 13:08
你这问题根本没解决,只是逃避了,能用 subroutne 的,一定能用 function。
作者: 我是处手    时间: 2014-8-2 20:05
情况是这样的,有个复杂函数A我用function计算返回值,复杂函数B需要用到参数A,但同样B我也是用的function函数,调用A好像出问题了,传不过来数据,我换subroutine可以了,这个问题暂时放放了,毕业推迟半年了,现在程序还没有调通,不能纠结这个问题了




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2