Fortran Coder

关于module里面动态数组的问题

查看数: 6600 | 评论数: 4 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2019-3-12 11:07

正文摘要:

在编写一个二维欧拉求解器,使用的是VS2017和IVF。 主程序开头使用module,里面将如下变量声明为动态数组。 然后读取网格文件,得到单元数为 ncells 然后在子程序initialize 里面,给动态数组分配时候就出现了问 ...

回复

513981387 发表于 2019-3-13 14:19:48
vvt 发表于 2019-3-13 07:08
这种问题,归根结底,是“程序的执行流程超出了你的预期”
往往,你认为是“第一次”,但由于某些意料之外 ...

问题找到了,谢谢,确实是之前有一个子程序包含了数组分配的命令,不过因为不是自己写的子程序所以忽略了,感谢!
vvt 发表于 2019-3-13 07:08:23
本帖最后由 vvt 于 2019-3-13 07:10 编辑
513981387 发表于 2019-3-12 19:17
但是我的整个程序里面,这是第一次分配数组啊,在这之前没有使用过allocate的命令,为什么会对同一数组多 ...

这种问题,归根结底,是“程序的执行流程超出了你的预期”
往往,你认为是“第一次”,但由于某些意料之外的因素,导致“你认为的并不是你认为的”

你可以在所有分配语句上下断点,然后跟踪调试一下。看看是否“真的”是第一次。

别人没法代劳,毕竟,我们只有看到很小一部分源代码。
如果你自己排查有困难,代码又不涉密。可以上传全部代码,如果有输入文件,屏幕输入,也一并上传说明。
513981387 发表于 2019-3-12 19:17:05
li913 发表于 2019-3-12 17:33
多次对同一动态数组进行分配。你可以 分配-释放-分配-释放,但不能 分配-分配- ...

但是我的整个程序里面,这是第一次分配数组啊,在这之前没有使用过allocate的命令,为什么会对同一数组多次分配呢
li913 发表于 2019-3-12 17:33:34
多次对同一动态数组进行分配。你可以 分配-释放-分配-释放,但不能 分配-分配-

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-12-24 03:51

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表