Java调用C有多种方式,本文介绍笔者最近的学习过程,避免今后再犯类似的错误。
首先,Java肯定是调用C的动态链接库,即通过编译器编译后的dll/so文件。
下面介绍gcc编译dll的方法。
一般情况把主函数,子函数定义,子函数声明(全局变量,宏等)分别放在不同的文件中。
我们主要对子函数编译生成可用的dll,供主函数调用。
有一个工程,里面有三个文件,分别是
#include <stdio.h> #include "test.h" int main(int argc, char *argv[]) { printf("2 + 3 = %d\n", sum(2, 3)); return 0; }