如果应该返回 boolean 值( native 类型 jboolean)的 JNI native 函数返回的值既不是 JNI_FALSE (0) 也不是 JNI_TRUE (1),它是否定义了 Java 应如何解释该值?
对于两个不同版本的 Java,我在从执行以下操作的 native 函数返回后观察到了一些奇怪的情况:
JNIEXPORT jboolean JNICALL
Java_Class_function(JNIEnv* env, jobject obj)
{
return 2;
}
最佳答案
这是未定义的行为。不要这样做。
关于java - 返回既不是 JNI_FALSE 也不是 JNI_TRUE 的 jboolean 的 JNI native 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20262762/