我想在C语言中实现void函数,在这个函数中我将改变指针值,就像这样。
void func(int* k){ *k = 9; }
正如你所看到的,这里我改变了k值,比如说用9。 我如何在python中用ctypes写这个函数,这样我就可以看到改变的值是什么,在C语言中,让我们说说下面的python代码示例。
import ctypes
d = ctypes.CDLL(r'mydll.dll')
d.our_function.argtypes = (ctypes.POINTER(ctypes.c_int))
正如你所看到的,没有返回,那么我如何在我的python调用中看到我的值被改变了呢?对不起,我的英语不好...
你需要分配一个 int
自己在Python中,并传递它的地址,就像这样。
k = c_int()
d.our_function(byref(k))
print(k.value)