Arrays 从R向Fortran子程序传递3+维数组

Arrays 从R向Fortran子程序传递3+维数组,arrays,r,fortran,Arrays,R,Fortran,是否可以从R向Fortran子程序传递一个3+维数组 我试图在我的R包中利用Fortran库,但其中一个Fortran子例程使用3d数组 Fortran代码如下所示: SUBROUTINE foo(var1,arr) implicit none integer :: var1 integer, dimension(10,20,30) :: arr !... do some calculations ... end SUBROUTINE 我在参数中有R传递 .Fortran("foo", 1

是否可以从R向Fortran子程序传递一个3+维数组

我试图在我的R包中利用Fortran库,但其中一个Fortran子例程使用3d数组

Fortran代码如下所示:

SUBROUTINE foo(var1,arr)
implicit none
integer :: var1
integer, dimension(10,20,30) :: arr

!... do some calculations ...

end SUBROUTINE
我在参数中有R传递

.Fortran("foo", 1L, array(0L, dim = c(10, 20, 30))
但这会使我的R会话崩溃。我猜数组是不可接受的

我收到的错误消息是:

*** caught segfault ***
address 0x23d0018, cause 'memory not mapped'

它是如何崩溃的?它会打印什么吗?我是说长吗?您确定它与整数相同吗?在R 1L中是一个4字节integer@VladimirF1L是R中的一个整数。我正在R Studio中编码,我得到的唯一错误消息是弹出窗口,说R遇到了致命错误。会议结束。让我试着在终端中运行代码,看看是否出现另一条错误消息。A ha..**捕获到segfault***地址0x3839018,原因是“内存未映射”: