python代码在for循环中调用dll时返回nan

时间:2014-11-12 15:49:13

标签: python c++ dll

现在,在我的python代码中尝试调用dll(在Visual Studio 2008下编译)时,我有一种非常奇怪的行为。 我使用ctypes模块导入了dll,如下所示:

import ctypes as C

dll = C.cdll.LoadLibrary("C:\PyRates\\pyrateslibdll.dll")

如果我只在一个代码行中调用dll的一个函数,一切正常,但如果我在for循环中调用相同的函数,即使代码执行相同的操作,我也会得到nans。 例如:

ans = {}
for i in [1,2]:
   ans[i] = dll.myfunc(i)

返回:

ans[i] = nan

在一些调用上,如果我执行此代码:

 i = 1
 ans[i] = dll.myfunc(i)
 i = 2
 ans[i] = dll.myfunc(i)

我明白了。

有没有人有同样的行为? 谢谢你的帮助 我在Windows 64bit中使用Python 2.7但是dll和python在32位运行。

0 个答案:

没有答案