我有一个像
这样的int数组int [] [] coordinates = {{346,640,499,666},{555,640,675,666}};
我试图使用JNI将此数组发送到C.我可以找到一维数组的清晰解决方案,但不能找到多维数组。
public class PopulateCoordinates{
public native void Coordinates(int[][] coordinates);
static {
System.loadLibrary("libPopulateCoordinates");
}
public static void main(String[] args) {
PopulateCoordinates h = new PopulateCoordinates();
int[][] coordinates = {{346, 640, 499, 666},{555, 640, 675, 666}};
h.Coordinates(coordinates);
}
}
我的JNI方法将填充从java传递的数组 像这样
rect skip_rectarr [2] = {{346,640,499,666},{555,640,675,666}};
JNIEXPORT void JNICALL PopulateCoordinates_Coordinates(JNIEnv *env, jobject obj,jobjectArray inJNIArray)
{
//rect skip_rectarr[2] = { {346, 640, 499, 666}, { 555, 640, 675, 666 }};
}
有谁可以帮我告诉你怎么做?