24小时热门版块排行榜    

查看: 1413  |  回复: 7

马墨迹

金虫 (小有名气)

[求助] do循环中,循环变量一直是841774008,不能赋值,求助!已有4人参与

第一次遇见这个问题,循环变量j一直是这个挺大的数字(内存地址?),请教大神是什么原因造成的?

do循环中,循环变量一直是841774008,不能赋值,求助!
PL(T6V(Y)Z6UE6]G77)`AIS.png
回复此楼
墨迹不磨叽
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lilitu

木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
大数字说明没有赋上值。。。
2楼2014-10-15 17:29:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

马墨迹

金虫 (小有名气)

引用回帖:
2楼: Originally posted by lilitu at 2014-10-15 17:29:13
大数字说明没有赋上值。。。

可是,找不到哪里出了问题。。。
墨迹不磨叽
3楼2014-10-15 18:40:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wujiadw

铜虫 (初入文坛)

【答案】应助回帖

感谢参与,应助指数 +1
你的数组值检查过吗?
4楼2014-10-16 13:20:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weiwei43

至尊木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
可能的问题:
1.数组是否说明,如shear_lame,con_lame
2. 数组事先是否赋值,我估计你的数组没有赋值。如果是fortran66,没有赋值默认是0,如果是intel fortran,没有赋值就是任意数,就像你现在得到的一个随机很大值。
5楼2014-10-17 08:21:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

马墨迹

金虫 (小有名气)

引用回帖:
5楼: Originally posted by weiwei43 at 2014-10-17 08:21:18
可能的问题:
1.数组是否说明,如shear_lame,con_lame
2. 数组事先是否赋值,我估计你的数组没有赋值。如果是fortran66,没有赋值默认是0,如果是intel fortran,没有赋值就是任意数,就像你现在得到的一个随机很大 ...

dimension shear_lame(10),con_lame(10)
两个数组都定义了的。也从txt文件中导入了数据。用的是CVF,77的。
我在怀疑可能是别的地方出问题导致这部分的变量不能赋值。因为在调用一个子函数之前,数组是正常的,在这个子函数中调用了这个数组,调用后,数组的值也发生了变化。
a(3,1)=4*shear_lame(i)**2.0*dlta*(-sinh(k*d)+k*d*cosh(k*d))
墨迹不磨叽
6楼2014-10-17 15:52:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

浔荆

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
在变量出错前设置一个断点,然后一行行运行,观察变量的值是在哪一步出错的
7楼2014-10-17 18:18:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

weiwei43

至尊木虫 (正式写手)

【答案】应助回帖

引用回帖:
6楼: Originally posted by 马墨迹 at 2014-10-17 15:52:11
dimension shear_lame(10),con_lame(10)
两个数组都定义了的。也从txt文件中导入了数据。用的是CVF,77的。
我在怀疑可能是别的地方出问题导致这部分的变量不能赋值。因为在调用一个子函数之前,数组是正常的,在 ...

你在这个出错的子函数内部是否有这个数组的说明?
8楼2014-10-18 07:30:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 马墨迹 的主题更新
信息提示
请填处理意见