请教python调用dll动态库的传参问题
展开全部
按C语言的规则就可以。 不过你的DLL是什么编译的。 如果是C++的则与C不同。另外编译器也相关。 BC和VC还有其它编译器编译出来的DLL也有些微的区别。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#传入数组的例子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,
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询