我想将一个字符串传递到我正在编写的JNI中,该字符串必须分配给const char *。 以下是我的做法:
JNI...(...,jstring jstr...){
const char* str = env->GetStringUTFChars(jstr,0);
env->ReleaseStringUTFChars(str,jstr,0);
}
但是如果我在将 const char* str 赋值给 jstring 后使用 printf,与我直接在 JNI 中赋值 str 值并从那里 printf 所看到的不同。
这是正确的做法吗?还是有其他方法将字符串从 Java 分配给 JNI 中的 const char*?
ReleaseStringUTFChars
的参数与文档不符。 - Leponzo