如果应该返回布尔值(本地类型jboolean)的JNI本机函数返回的值既不是JNI_FALSE(0)也不是JNI_TRUE(1),那么它是否定义了Java应该如何解释该值?

在使用两种不同版本的Java时,从执行类似以下操作的本机函数返回后,我观察到一些奇怪的事情:

JNIEXPORT jboolean JNICALL
Java_Class_function(JNIEnv* env, jobject obj)
{
    return 2;
}

最佳答案

这是不确定的行为。不要这样

关于java - JNI native 方法返回既不是JNI_FALSE也不是JNI_TRUE的jboolean,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20262762/

10-11 00:05