JNI
nicolelili1
这个作者很懒,什么都没留下…
展开
-
错误 36 error LNK2019: 无法解析的外部符号 random
错误 36 error LNK2019: 无法解析的外部符号 random原因:在vc++中程序中用了srandom()和random(),头文件为stdlib.h,但编译出现错误error C3861: “srandom”: 找不到标识符。 原因是现在vc++编译器的库函数中没有randomize()和random(),分别用srand()和rand()代替了。...原创 2019-11-10 23:52:17 · 1794 阅读 · 1 评论 -
错误 34 error LNK2019: 无法解析的外部符号 srandom
错误 34 error LNK2019: 无法解析的外部符号 srandom原因:在vc++中程序中用了srandom()和random(),头文件为stdlib.h,但编译出现错误error C3861: “srandom”: 找不到标识符。 原因是现在vc++编译器的库函数中没有randomize()和random(),分别用srand()和rand()代替了。...原创 2019-11-10 23:50:12 · 796 阅读 · 0 评论 -
The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name
运行项目报下面的错:错误 16 error C4996: 'fileno': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _fileno. See online help for details. E:\c\bsdiff\bsdiff\dlltest...原创 2019-11-10 19:22:36 · 1500 阅读 · 0 评论 -
文件的拆分与合并
1、声明本地方法 public native void diff(String path,String path_pattern,int count); public native void patch(String path,int count,String path_pattern);2、生成头文件JNIEXPORT void JNICALL Java_com_do...原创 2019-11-10 17:25:46 · 314 阅读 · 0 评论 -
java、jni操作数组
1、java中定义 public native void giveArray(int[] array); public native int[] getArray(int len);2、定义头文件JNIEXPORT void JNICALL Java_com_dongnaoedu_jni_JniTest_giveArray(JNIEnv *, jobject, jin...原创 2019-11-06 21:59:13 · 342 阅读 · 0 评论 -
jni解决字符串乱码
1、java代码package com.dongnaoedu.jni;public class JniTest { public native String chineseChars(String in); public static void main(String[] args) { System.out.println(t.chineseChars("jav...原创 2019-11-06 17:52:21 · 663 阅读 · 0 评论 -
error C2065:"null":未声明的标识符
问题:在使用visual studio进行编译的时候出现如下错误error C2065:"null":未声明的标识符原因:1、没有引用相应的头文件2、引用头文件的顺序不对解决办法:引用相应的头文件并修改其头文件的使用顺序如:在头文件中使用到了jstring类,那么需要引入头文件string.h并且放在自定义头文件com_dongnaoedu_jni_Jn...原创 2019-11-06 16:12:50 · 2996 阅读 · 0 评论 -
jni访问java中的方法
一、Java中代码1、java中父类package com.dongnaoedu.jni;public class Human { public void sayHi() { System.out.println("人打招呼..........."); }}2、java中子类package com.dongnaoedu.jni;public clas...原创 2019-11-06 15:23:44 · 159 阅读 · 0 评论 -
查看类属性及方法的签名
1、查看java自带的类javap -s -p +包名+.+类名如查看java.util.Date中的签名2、查看自定义的类的签名定位到生成的类的.class文件的位置javap -s +包名+类名+.+class如在包名com.dongnaoedu.jni下有类JniTest查看类名的shell指令为 javap -s com.dongnaoedu.jni....原创 2019-11-06 13:45:30 · 1025 阅读 · 0 评论 -
JNI数据类型
一、jclass与jobject的区别每个native函数,都至少有两个参数(JNIEnv*,jclass或者jobject)1、当native方法为静态方法时: jclss代表native方法所属类的class对象2、当native方法为非静态方法时: jobject代表native方法所属的对象二、基本数据java基本数据类型与JNI数...原创 2019-10-24 00:19:05 · 532 阅读 · 0 评论 -
JNI开发流程
一、JNI(Java Native Interface)Java调用C/C++,C/C++调用Java的一套API二、调用C/C++动态库步骤1、编写native方法2、javah命令,生成.h头文件3、复制.h头文件到CPP工程中4、复制jni.h和jni_md.h文件到CPP工程中5、 实现.h头文件中声明的函数6、生成dll文件7、配置dll文件所在...原创 2019-10-23 21:31:22 · 130 阅读 · 0 评论