注意点
  1. Cの関数名の後ろに_(アンダースコア)をつける
  2. 引数は全て参照渡し
  3. 生成したオブジェクトファイルはg77で結合する
  • フォートランの中でCの関数を使う場合の例
  • candf.f

          PROGRAM CANDF
          implicit none
          
          real a,b,c
          a = 1.2
          b = 3.4
          call test(a,b,c)
          write(*,*)c
          
          end
    

    test.c

    #include 
    
    void test_(float *a,float *b,float *c)
    {
      *c = *a+*b;
      printf("%lg,%lg,%lg\n",*a,*b,*c);
    }
    

    Makefile

    candf:  candf.o test.o
            pgf77 *.o -o candf
    candf.o: candf.f
            pgf77 -c candf.f
    test.o: test.c
            g77 -c test.c
    
    clean: 
            rm -f Makefile~ *.c~ *.f~ *.o~ *.o candf