public class jcall
{
static
{
System.loadLibrary("jcallc.dll")
}
public native static int test(int i)
public static void main(String[] args)
{
jcall jc = new jcall()
int i
i = jc.test(4)
System.out.println(i)
}
}
2、编译java
javac jcall.java
4、生成头文件
javah jcall
生成jcall.h文件
5、制作VC动态库
建立DLL工程,程序添加:
#include "jcall.h"
JNIEXPORT jint JNICALL Java_jcall_test (JNIEnv *, jclass, jint p)
{
int j = p*2
return j
}
将jcall.h jni.h复制到VC工程目录,然后编译。
6、java调用
将jcallc.dll文件复制到jcall.java的目录中,运行
java jcall,就可以得到运行结果。
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in)
System.out.print("输入a:")
int a = scanner.nextInt()
System.out.print("输入b:")
int b = scanner.nextInt()
System.out.print("输入c:")
int c = scanner.nextInt()
System.out.print("输入d:")
int d = scanner.nextInt()
int maxAB, maxCD
System.out.println("最大值是:" + ((maxAB = a > b ? a : b) > (maxCD = c > d ? c : d) ? maxAB : maxCD))
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)