python ctypes – 传递numpy数组 – 奇数输出
发布时间:2020-05-28 02:55:54 所属栏目:Python 来源:互联网
导读:我正在使用ctypes,我正在将一个ndarray传递给一个c函数. 它给了我奇怪的输出行为. 下面是一些代码: C-功能: int foo(int * foo,int N){for(int i=0;iN;i++){ cout i i foo[i] endl; }return 0;} Python: from ctypes im
|
我正在使用ctypes,我正在将一个ndarray传递给一个c函数.
C-功能: int foo(int * foo,int N){
for(int i=0;i<N;i++){
cout << "i " << i << " "<< foo[i] << endl;
}
return 0;
}
Python: from ctypes import *
import numpy as np
bar = cdll.LoadLibrary(".../libtest.so")
N = c_int(10)
check = np.ones(10,dtype=int)
print check
bar.foo(c_int(check.ctypes.data),N)
输出: [1 1 1 1 1 1 1 1 1 1] i:0 out:1 i:1 out:0 i:2 out:1 i:3 out:0 i:4 out:1 i:5 out:0 i:6 out:1 i:7 out:0 i:8 out:1 i:9 out:0 一切都对吗? (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
