我在我的C++代码中有一个char向量。我该如何通过JNI将其返回给Java?在Java中,应该使用什么类似的数据类型来代替它?
我在我的C++代码中有一个char向量。我该如何通过JNI将其返回给Java?在Java中,应该使用什么类似的数据类型来代替它?
char
的 sizeof
被标准化为1,可能是 unsigned
或 signed
类型,如果是后者,它可能是2的补码或1的补码,尽管1的 补码从C++14开始被移除了!与之不同,Java的 char
是一个16位的 unsigned
。我认为将您的 char
向量转换的最佳方法是使用Java字节数组类之一。
ArrayList<Integer>
。在 C 和 Java 中,sizeof(char)
在底层实现上并不相同。 - Shark