gpt4 book ai didi

java - 双指针 Android JNI

转载 作者:行者123 更新时间:2023-11-30 17:56:00 25 4
gpt4 key购买 nike

我有一个获取双指针的函数

int getList(unsigned char **list); //it returns a list of something

我想知道如何将双指针从 native 代码 (JNI) 传递到我的函数。任何人?

这是我尝试过的方法,但它不起作用。

jint Java_test_test_Activity_getList(JNIEnv *env, jobject this, jobjectArray list, jint size){
jint count=0;
jbyteArray bArray;
jByteArray cList;
count=(*env)->GetArrayLength(env, list);
for(int i=0; i<count; i++){
bArray[i]=(*env)->GetObjectArrayElement(env, list, i);
(*env)->GetByteArrayRegion(env, bArray[i], 0, size, cList[i]);
}

return getList(cList);
}

最佳答案

不能使用“&”运算符来获取 jByteArray 的地址吗?

return  getList(&cList);
C/C++ 中的

'&' 给出变量(指针)的地址。您可以在指针上使用它来获得双指针。但我不确定 jByteArray 和 unsigned char* 之间的转换是否那么简单,您可能还有其他事情要做。

关于java - 双指针 Android JNI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13881675/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com