终于把古老的Fortran程序调通啦,给叶片优化程序添加了个自检验功能。但是在修改的过程中总是出现编译问题,现在问题解决,记录一下

问题一:

forrtl: severe (153): allocatable array or pointer is not allocated

解决方案:
程序中有数组动态分配之后,没有被释放。有可能是在该数组在你所用的功能中并没有被使用,但是开头就给声明了。这时只需要找出这几个数组,结尾处释放即可。


问题二:

forrtl: severe (174): SIGSEGV, segmentation fault occurred

解决方案:
原因是程序动态分配数组大小未知。allocate命令分配数组时,数组大小变量,未被赋值就会造成该错误。

Last modification:May 3rd, 2020 at 03:56 pm
如果觉得我的文章对你有用,请随意赞赏