1
傳遞指針到C函數在Python我想有作爲最佳方式使用CFFI
int f(double* x);
這樣的簽名的第三方庫創建一個Python包裝C函數其中函數f
修改輸入參數x
(即,使用指針通過引用調用)。什麼是實現Python包裝函數的最有效方法,以便Python用戶可以將它視爲一種每次只返回一個新數字的函數?實施例的僞代碼:
# lib and ffi are imported from a compiled cffi.FFI() object
def python_f():
??? double x; ???
rc = lib.f(&x)
assert rc == 0
return x
我應該使用陣列模塊(例如,創建尺寸1的「雙重」陣列,傳遞給該函數,並返回第一個索引)?有更輕量級的方法使用ctypes或cffi幫助函數嗎?