【发布时间】:2012-04-06 19:24:17
【问题描述】:
我的 C 很生锈。考虑上面的代码:我必须为 buf 释放内存还是每次调用都使用相同的 buf 数组?最佳做法是什么?
JNIEXPORT jstring JNICALL Java_test_version
(JNIEnv *env, jobject obj, jint handle) {
struct VersionNumber ver;
versionNumber_get((void *) handle, &ver);
char buf[30];
snprintf(buf, 30, "%d", ver.num);
return (*env)->NewStringUTF(env, buf);
}
【问题讨论】:
-
你应该担心
NewStringUTF是否使用buf的副本
标签: java c memory-leaks java-native-interface