我在fortran77 dec(3,25000)中有以下数组,即使只使用第二维25000个位置中的8898个。
我将这个数组和其他数组一起作为参数传递给一个C函数。即使另一个参数的值看起来是正确的,dec()值也是错误的。
我试着只传递dec()数组,结果是一样的。dec(1,1) ( fortran77 )中的值等于dec (C)中的值,但是对于数组中的随机位置,我在调用C函数之前的fortran77和C函数中没有得到相同的值。
知道为什么会这样吗?
该数组在fortran中声明为real*8 dec(3,25000),在C中声明为int dec3。
提前感谢
发布于 2012-06-24 13:54:47
请记住,二维数组的主要顺序是在两种语言之间交换的。因此,一种语言中的dec[i][j]在另一种语言中就是dec[j][i],加上您已经发现的索引基数调整。
https://stackoverflow.com/questions/11175220
复制相似问题