在Fortran中无效指针

时间:2013-01-12 15:47:25

标签: pointers fortran

我正在为Fortran代码添加一个模块,并遇到了以下问题。我有一个派生数据类型Info,其中包含几个其他变量,其中包括一个4D指针数组(它是一个水文代码,所以它是3个空间组件和1个可变组件)。为了使我的子程序更容易阅读,我只需指针q并指向Info%q,如下所示:

    real,pointer::q(:,:,:,:)
    q=>Info%q
    ...
    some work on q

我遇到的问题是:我应该在deallocate(q)之前使用nullify(q)吗?或者,由于q指向代码中其他位置所必需的数组,我应该使用nullify吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:5)

只能取消!否则原始指针将是未定义的,并且数组将不再存在!