gpt4 book ai didi

java - JNI 释放内存

转载 作者:太空宇宙 更新时间:2023-11-03 23:33:35 24 4
gpt4 key购买 nike

我的 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);
}

最佳答案

buf 是一个栈变量,方法返回时会被回收,这里不需要你做什么。

另外,因为它是一个堆栈变量,它将为每个方法调用分配。

关于java - JNI 释放内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9818794/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com