我正在尝试将 FORTRAN 程序中的一维数组传递给 C。
C 函数被调用,但它保存的值是垃圾。但是,如果我尝试使用整数变量调用相同的函数,我可以传递所需的值。谁能帮我解决这个问题?
我使用的代码与此类似
文件:fortran_prog.f
program test
real*4 :: a(4)
data a / 1,2,3,4 /
call test_func(a)
end program test
文件:c_prog.c
int test_func(double a[]) {
int i;
for(i=0;i<4;i++) {
printf("%f\n",a[i]);
}
return 0;
}