gpt4 book ai didi

java-native-interface - GetStringUTFChars 函数参数

转载 作者:行者123 更新时间:2023-12-04 01:56:55 25 4
gpt4 key购买 nike

我正在使用 jni 开发 Android 应用程序。
我使用 GetStringUTFChars 函数如下

jboolean iscopy;
const char* trainfile = (env)->GetStringUTFChars(jstr, &iscopy);

但我看到了另一个这样的例子
const char *inCStr = (*env)->GetStringUTFChars(env, inJNIStr, NULL);

两者都运作良好。但是我找不到任何关于前文法的文档,即使是更简洁的文档。

我在哪里可以找到文档,它们之间有什么区别吗?

最佳答案

第一个示例是 C++ 语法,仅适用于 C++ 程序。第二个是针对 C 程序的。

两者不同的原因是在 C++ 中 JNIEnv 是一个类,函数是 env 对象的成员函数,而在 C 中 JNIEnv 是一个指向结构的指针。由于您收到的参数是指向 JNIEnv 的指针,因此在 C 中您必须取消引用它才能访问结构成员,这就是您必须使用 *env 的原因。代替 env .

这应该在关于如何使用 JNI 的任何文本中都有涉及,但您也可以通过阅读头文件中的代码来找到它。

关于java-native-interface - GetStringUTFChars 函数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18973866/

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