最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Windows系統(tǒng)Python直接調用C++ DLL的方法

 更新時間:2019年08月01日 15:29:27   作者:西北望射天狼  
這篇文章主要介紹了Windows系統(tǒng)Python直接調用C++ DLL文件的方法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值 ,需要的朋友可以參考下

環(huán)境:Window 10,VS 2019, Python 2.7.12, 64bit

1,打開 VS 2019,新建C++ Windows 動態(tài)鏈接庫工程 Example,加入下列文件,如果Python是64位的則在VS中 Solution platforms 選擇 x64 編譯成64位的 DLL;

Example.h

#pragma once
#ifndef CPP_EXPORTS
#define CPP_EXPORTS
#endif
#ifdef CPP_EXPORTS
#define CPP_API _declspec(dllexport)
#else 
#define CPP_API _declspec(dllimport)
#endif
#include <iostream>
using namespace std;
#ifdef __cplusplus
extern "C"
{
#endif
  CPP_API int __cdecl getInt();
  CPP_API const char* __cdecl getString();
  CPP_API void __cdecl setString(const char* str);
#ifdef __cplusplus
}
#endif

Example.cpp

#include "pch.h"
#include "Example.h"
CPP_API int __cdecl getInt()
{
  return 5;
}
CPP_API const char* __cdecl getString()
{
  return "hello";
}
CPP_API void __cdecl setString(const char* str)
{
  cout << str << endl;
}

編譯,得到 Example.dll

2, 打開 Command,cd 到 Example.dll 所在目錄,輸入 Python2,進入python環(huán)境

>>> from ctypes import *
>>> dll = CDLL("Example.dll")
>>> print dll.getInt()
5
>>> getStr = dll.getString
>>> getStr.restype = c_char_p
>>> pChar = getStr()
>>> print c_char_p(pChar).value
hello
>>> setStr = dll.setString
>>> setStr.argtypes = [c_char_p]
>>> pStr = create_string_buffer("hello")
>>> setStr(pStr)
hello
-1043503984

總結

以上所述是小編給大家介紹的Windows系統(tǒng)Python直接調用C++ DLL的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!

相關文章

  • python自定義異常實例詳解

    python自定義異常實例詳解

    這篇文章主要介紹了python自定義異常實例詳解的相關資料,需要的朋友可以參考下
    2017-07-07
  • Python中操作符重載用法分析

    Python中操作符重載用法分析

    這篇文章主要介紹了Python中操作符重載用法,較為詳細的分析了Python操作符重載的功能,使用方法與相關注意事項,需要的朋友可以參考下
    2016-04-04
  • python中的錯誤處理及異常斷言詳解

    python中的錯誤處理及異常斷言詳解

    這篇文章主要為大家介紹了python中的錯誤處理及異常斷言示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • Python實現(xiàn)數(shù)據(jù)濾波的示例詳解

    Python實現(xiàn)數(shù)據(jù)濾波的示例詳解

    這篇文章主要為大家詳細介紹了Python實現(xiàn)數(shù)據(jù)濾波的相關知識,文中的示例代碼講解詳細,具有一定的借鑒價值,有需要的小伙伴可以跟隨小編一起學習一下
    2024-03-03
  • python中dir()與__dict__屬性的區(qū)別淺析

    python中dir()與__dict__屬性的區(qū)別淺析

    這篇文章主要給大家介紹了關于python中dir()與__dict__屬性的區(qū)別的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-12-12
  • 淺談tensorflow中幾個隨機函數(shù)的用法

    淺談tensorflow中幾個隨機函數(shù)的用法

    今天小編就為大家分享一篇淺談tensorflow中幾個隨機函數(shù)的用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • 關于Python字符串顯示u...的解決方式

    關于Python字符串顯示u...的解決方式

    這篇文章主要介紹了關于Python字符串顯示u...的解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • Python解壓可迭代對象賦值給多個變量詳解

    Python解壓可迭代對象賦值給多個變量詳解

    這篇文章主要為大家介紹了Python賦值多個變量,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • python超簡單解決約瑟夫環(huán)問題

    python超簡單解決約瑟夫環(huán)問題

    這篇文章主要介紹了python超簡單解決約瑟夫環(huán)問題的方法,詳細描述的約瑟夫環(huán)問題的描述與Python解決方法,需要的朋友可以參考下
    2015-05-05
  • ubuntu安裝jupyter并設置遠程訪問的實現(xiàn)

    ubuntu安裝jupyter并設置遠程訪問的實現(xiàn)

    Jupyter?Notebook是Ipython的升級版,而Ipython可以說是一個加強版的交互式Shell,本文主要介紹了ubuntu安裝jupyter并設置遠程訪問的實現(xiàn),感興趣的可以了解一下
    2022-03-03

最新評論

马山县| 东港市| 通山县| 工布江达县| 迭部县| 铁岭市| 鄂尔多斯市| 松江区| 突泉县| 嘉义市| 金沙县| 日照市| 崇文区| 会泽县| 合山市| 太和县| 航空| 沾益县| 德州市| 石楼县| 同德县| 清远市| 柳河县| 盈江县| 金湖县| 晋中市| 林州市| 五河县| 越西县| 托克托县| 南充市| 逊克县| 治县。| 奎屯市| 尚志市| 上思县| 渭南市| 永吉县| 长葛市| 丽江市| 晋中市|