gpt4 book ai didi

java - JNA,结构和数组

转载 作者:搜寻专家 更新时间:2023-11-01 03:27:29 25 4
gpt4 key购买 nike

我正在尝试创建我的类(扩展 JNA 的结构)的数组以将其传递给 DLL 函数。我已将值从数据库读取到 ArrayList,现在我需要将它们放入数组中。首先,我尝试使用 ArrayList 的 toArray() 方法,但是当我调用 native 函数时它返回以下异常:

java.lang.IllegalArgumentException: Structure array elements must use contiguous memory (bad backing address at Structure array index 1)

如果我简单地设置一个与 ArrayList 大小相同的新数组,当我在我的类中设置结构的“字段”时,它会返回一个 NullPointerException。

有人可以帮我解决这个问题吗?

最佳答案

Structure.toArray() 为您提供了一 block 连续分配的 Structure 对象。在从“值”的 ArrayList 初始化它之前创建这个结构数组。

关于java - JNA,结构和数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9691446/

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