|
本帖最后由 jason388 于 2014-3-13 09:30 编辑
即使运行正常也不应该像楼主这样使用。无论是Fortran还是C的动态内存分配,一般均应该分配/释放成对使用,以避免内存泄漏。因此,如果主程序为Fortran,则全局变量的内存分配和释放应该由Fortran负责,同样如果主程序为C则全局变量的内存分配和释放应该由C负责,当然函数内的局部变量的内存分配和释放不在此列。
按Fortran2003标准,Fortran的可分配数组和指针与C是不能互操作的,但TS 29113 Further Interoperability of Fortran with C通过ISO_Fortran_binding.h等使这些限制得以消除,遗憾的是目前gfotran还不能完全支持TS29113. |
|