JNA 基础篇<二> 结构体

本文介绍了如何使用JNA在Java中模拟C语言的结构体、Union以及回调函数。强调了结构体字段顺序的重要性,并展示了通过Structure及其实现类来表示结构体指针和值的方法。此外,还提及了JNA中固定内存以允许原生函数访问的机制。
摘要由CSDN通过智能技术生成

1.JNA模拟结构体

原生函数定义:

struct{  
  ipaddress              struAddress;//结构体中包含结构体 
  device_register_cb     fnCB;//回调函数
  void                   *pUser;  
  BYTE                   byRes[32];
}CmsListenParam, *CmsListenParam;
struct{
  char    szIP[128];
  WORD    wPort;
  BYTE    byRes[2];
}ipaddress, *ipaddress;

java使用下面的方式模拟结构体:

public static class CmsListenParam extends Structure{
    public IpAddress  struAddress;
    public DeviceRegisterCB   fnCB;
    public Pointer              pUser;
    public byte[]               byRes=new byte[32]; 
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值