如何将下面的函数映射到java?
VOID WriteToStruct(BOOL *状态,STRUCT_MSG RecBuff)
这个功能的作用:
1)填充结构RecBuff
2)更新状态
如何映射到Java中的布尔指针并访问函数更新的struct数据?
答案 0 :(得分:7)
我正在寻找有关JNA和结构的另一个问题,Google在这里重定向了我。我希望这会有所帮助。
来自JNA API
首先按值传递结构 定义结构,然后定义一个 从实现的那个空类 Structure.ByValue。使用ByValue class作为参数或返回类型。
// Original C code typedef struct _Point { int x, y; } Point; Point translate(Point pt, int dx, int dy); // Equivalent JNA mapping class Point extends Structure { public static class ByValue extends Point implements Structure.ByValue { } public int x, y; } Point.ByValue translate(Point.ByValue pt, int x, int y); ... Point.ByValue pt = new Point.ByValue(); Point result = translate(pt, 100, 100);
答案 1 :(得分:1)
您可以使用ByReference类通过引用传递值。假设BOOL是一个int,你可以使用IntegerByReference。