c++ jna 数据类型_如何使用JNA调用c/c++的原生方法

本文介绍了如何使用Java的JNA库调用C/C++编译的动态链接库(DLL)文件。首先,展示了创建C++ DLL工程的过程,包含一个打印问候的函数。接着,详细说明了Java代码如何加载并调用DLL中的函数。最后,还提及了在C语言中同样调用该DLL的方法,展示了跨语言调用的实现。
摘要由CSDN通过智能技术生成

假设有一个hello.dll文件,里面有个函数hi(),打印一句问候的字符串。

需要用Java来调用这个动态链接库文件,并调用hi()函数,如何实现呢?

一、使用codeblocks创建dynamic link library工程

122943372bdfa070d5a51e3860cf2944.png

C代码如下:demo.h#ifndef DEMO_H_INCLUDED

#define DEMO_H_INCLUDED

#include 

#ifdef BUILD_DLL

#define DLL_EXPORT __declspec(dllexport)

#else

#define DLL_EXPORT __declspec(dllimport)

#endif

void DLL_EXPORT hi();

#endif // DEMO_H_INCLUDED

demo.c#include 

#include "demo.h"

void DLL_EXPORT hi()

{

printf("Nice to meet you\n");

}

构建hello工程以后,会在Debug和Release目录下生成hello.dll文件,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值