How do I convert an unsigned int to jint? Do I have to convert it at all, or can I just return it without any special treatment? This is basically my code right now, but I can't test it, as I haven't setup JNI locally.
JNIEXPORT jint JNICALL
Java_test_test(JNIEnv* env, jobject obj, jlong ptr)
MyObject* m = (MyObject*) ptr;
unsigned int i = m->get();
In the general case,
jint is equivalent to
int, and so can hold about half the values of
unsigned int. Conversion will work silently, but if a
jint value is negative or if an
unsigned int value is larger than the maximum value a
jint can hold, the result will not be what you are expecting.