溫馨提示×

Ubuntu中Fortran如何調用C語言函數

小樊
57
2025-09-21 00:29:25
欄目: 智能運維

在Ubuntu中,Fortran可以通過使用ISO C Binding來調用C語言函數。以下是一個簡單的示例,展示了如何在Fortran代碼中調用C語言函數。

首先,創建一個C語言源文件(例如example.c),并包含一個簡單的函數:

#include <stdio.h>

void hello_from_c() {
    printf("Hello from C!\n");
}

接下來,創建一個Fortran源文件(例如example.f90),并使用iso_c_binding模塊來聲明和調用C函數:

program call_c_function
    use iso_c_binding, only: c_void
    implicit none

    interface
        subroutine hello_from_c() bind(c, name="hello_from_c")
            import c_void
        end subroutine hello_from_c
    end interface

    ! 調用C函數
    call hello_from_c()

end program call_c_function

在這個例子中,我們使用bind(c, name="hello_from_c")來指定C函數的名稱,以便Fortran代碼可以正確地找到并調用它。

現在,編譯C和Fortran源文件,并將它們鏈接在一起。在終端中,運行以下命令:

gfortran -c example.c
gfortran -c example.f90
gfortran example.o -o example

這將生成一個名為example的可執行文件。運行它,你將看到以下輸出:

Hello from C!

這就是在Ubuntu中使用Fortran調用C語言函數的方法。請注意,這個例子中的C函數沒有參數和返回值。如果你需要傳遞參數或處理返回值,你需要在Fortran接口塊中相應地聲明它們。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女