diff --git a/src/main/native/jniTestNative.c b/src/main/native/jniTestNative.c index 12368dc..b09c371 100644 --- a/src/main/native/jniTestNative.c +++ b/src/main/native/jniTestNative.c @@ -11,15 +11,17 @@ extern "C" { JNIEXPORT void JNICALL Java_com_zeekling_cn_jni_JniTest_say(JNIEnv* env, jclass cls, jstring j_str) { const char *c_str = NULL; char buff[128] = { 0 }; - c_str = (*env)->GetStringUTFChars(env, j_str, NULL); + jboolean isCopy; + c_str = (*env)->GetStringUTFChars(env, j_str, &isCopy); if (c_str == NULL) { printf("out of memory.\n"); return NULL; } - (*env)->ReleaseStringUTFChars(env, j_str, c_str); + printf("Hello,I'm C++,the Java Str is:%s\n", c_str); sprintf(buff, "hello %s", c_str); + (*env)->ReleaseStringUTFChars(env, j_str, c_str); return (*env)->NewStringUTF(env, buff); } #ifdef __cplusplus