如何使用cType、Python将字符串参数传递给C++函数

2024-10-02 16:33:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个C++ DLL库。一个功能如下所示。在

Python中的DLL导入是正确的。在

int _ParseLogin2Resp(const std::string& username,
                     const std::string& password,
                     char szErr[1024]);

事实上,我试过很多方法来传递参数。我知道C++ ^ {< CD1> }和^ {CD2}}的区别。在

1.使用c_char_p()和byref()

^{pr2}$

2.使用create_string_buffer()

username = ctypes.create_string_buffer("username")
_ParseLogin2Resp(username,...)

但是函数错误返回

The username or password is empty.

所以我找不到任何方法来将字符串参数传递给我的函数。在

我的问题是。在

有没有可能我可以传递正确的参数来调用我的函数,或者我必须重写我的dll库才能使函数正常工作?在


Tags: 方法函数功能参数stringbuffercreateusername