Fortran作为历史比较悠久的编程语言,积累了大量的代码,要将其直接转换为C语言费时费力。因此研究两者之间的混合编程非常有必要。
接下来运用一些简单实例来说明如何在Intel Visual Fortran中利用Fortran调用C语言的静态库函数。
1. 编写好C语言的静态库
在csource.cpp文件中写入下面实现加法的代码:
#include <stdio.h>
#include <stdlib.h>
extern "C" int ADD(int*, int*, int*);
int ADD(int* a, int* b, int* c) {
*c = (*a + *b);
return(1);
}
产生静态库FcallC.lib
2. 在Fortran中添加C语言静态库
配置Fortran工程属性
3. 调用C语言
program Console1
implicit none
! Variables
INTEGER :: A = 1
INTEGER :: B = 3
INTEGER :: C = 0
CALL ADD(A, B, C)
print *,C
end
输出4,调用成功。