您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python ctypes参数错误

Python ctypes参数错误

您可能混淆了调用约定。我猜你有一个C函数声明这样的事情:

double haloshg_add(double d1, double s2)
{
    return d1+d2;
}

认情况下,这将使用C调用约定。最简单的方法是在ctypes代码中更改调用约定:

nDLL = ctypes.CDLL('test.dll')

如果要将C代码中的调用约定更改为stdcall(匹配ctypes.WinDLL),则可以执行以下操作:

double __stdcall haloshg_add(double d1, double s2)

无论您做什么,都只需进行以下更改之一。如果您同时执行两个操作,则将导致反向失败!

如果是我,我只是将Python代码更改为使用C调用约定(use CDLL)。这种变化影响最小。

python 2022/1/1 18:47:15 有324人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶