python引用.dll文件并調(diào)用函數(shù)實例代碼
一. .dll文件生成
c++代碼 .cpp文件
#include <iostream>
// 導(dǎo)出函數(shù)聲明,供外部調(diào)用
extern "C" __declspec(dllexport) int add(int a, int b);
extern "C" __declspec(dllexport) void greet();
// 函數(shù)實現(xiàn)
int add(int a, int b) {
return a + b;
}
void greet() {
std::cout << "Hello from MyDLL!" << std::endl;
}
windows環(huán)境下使用命令生成.dll
g++ -shared -o demo.dll demo.cpp -Wl,--out-implib=libdemo.a -static-libstdc++
命令參數(shù)說明: -shared:指定生成動態(tài)鏈接庫(.dll)-o mydll.dll:指定輸出的 DLL 文件名 -Wl,--out-implib=libmydll.a:生成導(dǎo)入庫(.a 文件),供其他程序鏈接時使用 執(zhí)行成功后,會生成三個文件: mydll.dll:動態(tài)鏈接庫本體 libmydll.a:MinGW 格式的導(dǎo)入庫 mydll.exp:導(dǎo)出符號文件(輔助文件) libstdc++ -static-libstdc++:靜態(tài)鏈接 C++ 標(biāo)準(zhǔn)庫,將std::cout等實現(xiàn)打包到你的 DLL 中
二. python引用.dll文件
from ctypes import *
pdll = CDLL("E:\\project\\dll_demo\\demo.dll")
c = pdll.add(1,2)
print(c)
pdll.greet()
python調(diào)用結(jié)果
3
Hello from MyDLL!
總結(jié)
到此這篇關(guān)于python引用.dll文件并調(diào)用函數(shù)的文章就介紹到這了,更多相關(guān)python引用.dll文件調(diào)用函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
tensorflow 20:搭網(wǎng)絡(luò),導(dǎo)出模型,運行模型的實例
這篇文章主要介紹了tensorflow 20:搭網(wǎng)絡(luò),導(dǎo)出模型,運行模型的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
Django 導(dǎo)出項目依賴庫到 requirements.txt過程解析
這篇文章主要介紹了Django 導(dǎo)出項目依賴庫到 requirements.txt過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-08-08
windows下添加Python環(huán)境變量的方法匯總
默認(rèn)情況下,在windows下安裝python之后,系統(tǒng)并不會自動添加相應(yīng)的環(huán)境變量。此時不能在命令行直接使用python命令。今天我們就來看下,如何簡單快捷的在windows下添加Python環(huán)境變量2018-05-05
Python單個項目列表轉(zhuǎn)換為整數(shù)的實現(xiàn)
本文主要介紹了Python單個項目列表轉(zhuǎn)換為整數(shù)的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
詳解如何使用Plotly和Dash進(jìn)行數(shù)據(jù)可視化
數(shù)據(jù)可視化是數(shù)據(jù)分析中至關(guān)重要的一環(huán),它能夠幫助我們更直觀地理解數(shù)據(jù)并發(fā)現(xiàn)隱藏的模式和趨勢,本文將介紹如何使用Plotly和Dash進(jìn)行數(shù)據(jù)可視化,感興趣的可以了解下2024-04-04
MediaPipe API實現(xiàn)骨骼識別功能分步講解流程
MediaPipe是用于構(gòu)建多模態(tài)(例如視頻、音頻或任何時間序列數(shù)據(jù))、跨平臺(即eAndroid、IOS、web、邊緣設(shè)備)應(yīng)用ML管道的框架。這篇文章主要介紹了MediaPipe API實現(xiàn)骨骼識別功能分步流程2022-09-09

