我一直在研究一个python项目,该项目试图复制调用相同C ++ API的excel / vba的逻辑。我没有C ++库代码,但是有一个VBA / Excel代码,它定义了以下C ++ API的原型。
公共声明函数getVal(ByVal句柄,ByRef状态只要)Double()
我的python代码如下所示。我知道返回的数组大小为147。但是,返回的双精度数组tmpValues的数量似乎不正确。我做错什么了吗?我也尝试了“ dlllib.getVal.restype = POINTER(c_double)”,但是它也没有返回正确的值。有人可以帮我看看吗?
dlllib.getVal.restype = (c_double * 147)
tmpValues = dlllib.getVal(handle, byref(status))
if status != 0:
return
for i in range(147):
print tmpValues[i]
谢谢!