Python调用C ++库返回双精度数组

时间:2020-07-02 02:51:35

标签: python c++ vba

我一直在研究一个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]

谢谢!

0 个答案:

没有答案