ctypes使用教程
ctypes提供了三種呼叫動態庫的物件:cdll、windll、oledll。
其中cdll主要用來載入C語言呼叫方式,windll主要用來載入WIN32呼叫方式,而oledll使用WIN32呼叫方式且返回值是Windows裡返回的HRESULT值。
從而實現在python程式碼中呼叫C函式的功能。是不是很神奇。
ctypes內建函式,不需要安裝
from ctypes import * # 匯入
CDLL('/usr/local/lib/', mode=_GLOBAL) # 載入。
so動態庫,mode=_GLOBAL實現如果呼叫的動態庫有其它依賴庫時,提前載入的功能
libc = Library('/opt/bin/lib/') # 例如,依賴了上述庫,就需要載入庫為全域性載入
DeviceId = [0x00] * 8
DeviceId = (c_ubyte * 8)(*DeviceId) # 這個是之前比較傻的做法,因為要先給這個變數分配一段地址,其實這裡用
tartInfo(byref(DeviceId)) # 呼叫C語言介面函式 GenStartInfo
deviceId = ctypes.c_void_p()
DeviceId = ter(deviceId)
tartInfo(DeviceId) # 使用指標即可
byref(n)返回的相當於C的指標右值&n,本身沒有被分配空間
pointer返回的相當於指標左值T* p=&n,可以改變,可以取地址
這樣就完成了最基本的呼叫C介面函式的功能
有時候希望打印出來,但如果返回值不對的時候,列印總是出錯,於是寫了一個列印函式
-
海爾空調間隔幾分鐘製冷
應該是空調進入正常化霜運行了。此時室外環境溫度較低,溼度較大在這種情況下空調製熱執行會每隔1小時左右化一次霜,化霜時間在3~10分鐘不等,化霜執行時空調室內外機風機電機停止執行,只有壓縮機運轉。3分鐘,製冷是因為溫度不一致了,所以又啟動開始製冷了。這是智慧控...
-
港版官換機好不好
港版官換機挺好的。官換機是通過蘋果官方渠道出來的,是蘋果官方認證的全新機。雖然這是蘋果生產的用來售後更換的機子,不拿來零售,但其實在質量和效能上,都是有絕對保證的。官換機換出來均為單機頭無配件,包裝盒子的,比如你自己手機非人為情況下損壞了拿去蘋果直營店...
-
爆炒蠶豆仁怎麼做
蠶豆洗乾淨,瀝乾水分步驟2幹辣椒切斷,大蒜敲碎待用。五花肉切好,用鹽巴醃一下,味道會更贊(≧▽≦)/!步驟3熱油,用小火炒熟,裝盤待用步驟4辣椒和蒜頭先下鍋編出香味,倒入蠶豆炒熟步驟5倒入炒好的肉一起翻炒2分鐘,加入鹽巴,味精,一點糖,OK烹飪技巧1、肉要用鹽巴醃一下才會入...
-
新鮮豆皮的做法
涼調最好吃,把豆皮切絲過一下熱水,控水待用,胡蘿蔔切絲過一下熱水控水、金針菇過一下熱水控水、把它們放在一起,加鹽、味極鮮、蠔油、少許白糖、醋、蒜末、薑末,然後用蔥花熟油倒進豆皮裡攪拌均勻即可。調料:姜5克、3/4茶匙鹽、1/4茶匙味精、適量水澱粉、熟植物油做...