请教python调用dll动态库的传参问题

 我来答
景若山0h9
2017-02-17 · 超过201用户采纳过TA的回答
知道小有建树答主
回答量:553
采纳率:0%
帮助的人:216万
展开全部
按C语言的规则就可以。 不过你的DLL是什么编译的。 如果是C++的则与C不同。另外编译器也相关。 BC和VC还有其它编译器编译出来的DLL也有些微的区别。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小狮猫133
2017-02-17 · 超过86用户采纳过TA的回答
知道小有建树答主
回答量:162
采纳率:0%
帮助的人:51.2万
展开全部
#传入数组的例子from ctypes import *cdll.LoadLibrary("libc.so.6") # doctest: +LINUXlibc = CDLL("libc.so.6") #IntArray5 = c_int * 5ia = IntArray5(5, 1, 7, 33, 99)qsort = libc.qsortqsort.restype = NoneCMPFUNC = CFUNCTYPE(c_int, POINTER(c_int), POINTER(c_int))def py_cmp_func(a, b): print "py_cmp_func", a[0], b[0] return a[0] - b[0]cmp_func = CMPFUNC(py_cmp_func)qsort(ia, len(ia), sizeof(c_int), cmp_func)for i in ia: print i,
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式