我有一段C ++代码调用fortran代码。在我更新到MacOsX 10.14(Mojave)之前,它一直有效。在fortran中,我有类似的内容:
SUBROUTINE BLA(C)
CHARACTER*(*) C
PRINT*, C
END
和C:
char c[128];
int main(int argc, char **argv) {
bla(c);
}
它现在失败,并显示:
h2root(41545,0x1116165c0) malloc: can't allocate region
*** mach_vm_map(size=140728898424832) failed (error code=3)
h2root(41545,0x1116165c0) malloc: *** set a breakpoint in malloc_error_break to debug
Operating system error: Cannot allocate memory
Memory allocation failure in xrealloc
(h2root是我的程序的名称)。 在OSX 10.14之前,它曾经可以正常工作。现在,一旦在fortran端访问了字符串C,我就会崩溃。有什么想法吗? 我正在使用fortran 8.2.0