python使用ctypes呼叫 c

2021-09-26 21:06:52 字數 769 閱讀 1075

不多bb,非常簡單。

簡單來說,c++/c完整的**段只需要編譯輸出到dll程度,就可以被python呼叫了。

python呼叫dll的方法,就是用ctypes裡面的方法。

1、先把完整**段寫成.c/.cpp,放好備用。

2、然後用msvc編譯這個,輸出dll。

找不到msvc?如果你安裝了visual studio,一般會有這個:

3、就是它,cd到你c**片段的地方,進行編譯:

cl /ld module_name.c /o module_name.dll
在c**旁邊就會生成dll。

這個dll就可以被python呼叫了。

如果你的python是64位的,msvc編譯出的dll是32位的,那麼是不能被呼叫的,你要使其對應。

4、怎麼呼叫?

在旁邊新建乙個.py檔案,打入這些:

from ctypes import *

if __name__=="__main__":

cplusplus =cdll.loadlibrary('cplusplus.dll')

cplusplus.main()

exit(0)

loadlibrary顯然是字面意思,後面的執行函式就是您打包在dll裡面的函式了。原來你寫過什麼函式,就可以用什麼方法。

python中ctypes的使用

window下,python銜接c語言程式設計 本地安裝64位的python3.5,visual studio 2017 step1 安裝visual studio 2017,提供c語言編譯器 即msvc版本,另一版本是linux下的gcc step2 選擇x64的命令列 step3 輸入pip i...

python效率提公升 ctypes的使用

python執行效率緩慢,一直是為眾人所詬病的。不過還好,python的ctypes庫可以呼叫載入c c 的函式庫,這樣python中需要效率的部分就用c c 寫,從而極大地提公升python的執行效率。1.不用ctypes的示例 from time import time t time s 0fo...

Python中ctypes的使用整理

ctypes是python的乙個外部庫,提供和c語言相容的資料型別,可以很方便地呼叫c dll中的函式。ctypes的官方文件在這裡。1.ctypes基本資料型別對映表 引數型別預先設定好,或者在呼叫函式時再把引數轉成相應的c 型別。ctypes的型別對應如下 ctypes typec typepy...