背景
我正在使用JNI中的字节数组.而且我无法获得jbyteArray的长度.我正在Windows 7中的eclipse中编写代码.
private native int Enroll( byte[] pSeed );
JNI代码:
在JNI中,我有一个结构,它有两个成员无符号长度和无符号字符数据[1]
typedef struct blobData_s {
unsigned long length;
unsigned char data[1];
} blobData_t;
现在我的JNI函数得到参数jbyteArray jpSeed我想得到jpSeed的长度并将其设置为struct的length成员.
JNIEXPORT jint JNICALL Java_com_Test_Enroll( JNIEnv* env, jobject thiz, jbyteArray jpSeed ){
blobData_t* bd = malloc( sizeof(blobData_t) );
bd->length = **Question 1**
bd->data[1] = jbyteArray;
}
问题1:如何在JNI中获得jpSeed的长度?
问题2:此代码是否正常bd.data [1] = jbyteArray; ?