extern "FORTRAN"
{ void cfort(int(**)[]); }
#include <stdio.h>
main()
{
int matrix[3] = {0,1,2};
int (*temp)[] = &matrix;
cfort(&temp);
printf
("Updated values in C: %d %d %d\n",
matrix[0], matrix[1], matrix[2]);
}
|
SUBROUTINE CFORT ( ARG )
POINTER*4 (ARG, Y)
INTEGER*4 Y(3)
PRINT *,
1 'FORTRAN ARRAY ARG VALUES:', Y
DO J = 1, 3
Y(J) = Y(J) + 1
ENDDO
END
|