android ndk jni 数组操作
1、jni提供的主要的数组类型有,如下类型:

2、创建一个jniArray工程,并在MainActivity中添加如下 native 方法,如下图所示:

3、配置java的参数

4、通过javah生成对应的C语言层.h文件:

1、有所的例子都是通过
1、java层传入一个数组;
2、C语言层创建一个同样大小的数组;
3、将java层数组的类容,复制到C语言层数组中;
2、object[] 与 jobjectArray 的例子如下图所示:

3、boolean[] 与 jbooleanArray 的例子如下图所示:

4、当然也可以通过
GetBooleanArrayRegion 函数来获取数组对应内存数据的副本,然后通过
SetBooleanArrayRegion 函数将修改后的数据设置进去;从而达到修改数据的内存数据的目的;
5、byte,char, short, int, long, float,double的用法跟boolean的用法一致
6、但是需要注意的是,java和C语言虽然有些类型的名字一致,但是他们的实际情况差距很大,如下图所示:
jbyte 对应的是 signed char;
jchar 对应的是 unsigned short;
jlong 对应的是 long long;

7、 方便他人亦是方便自己,如果觉得还行就点下下边的投票吧,这样可以帮助其他人更快的找到解决问题的方法;有疑问的也可留言哦, 谢谢!

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:92
阅读量:169
阅读量:74
阅读量:28
阅读量:181