Windows下python与C++通信代码事例
时间: 2023-11-11 19:05:07 浏览: 99
python与c++交互样例代码
在Windows下,Python与C++之间可以通过多种方式进行通信,例如使用sockets、共享内存或者调用DLL等方式。下面是其中一种基于DLL调用的示例代码。
Python端代码:
```python
import ctypes
# 加载DLL文件
mydll = ctypes.WinDLL('mydll.dll')
# 定义函数参数和返回值类型
mydll.add.argtypes = [ctypes.c_int, ctypes.c_int]
mydll.add.restype = ctypes.c_int
# 调用DLL中的函数
result = mydll.add(1, 2)
print(result)
```
C++端代码:
```c++
#ifdef MYDLL_EXPORTS
#define MYDLL_API __declspec(dllexport)
#else
#define MYDLL_API __declspec(dllimport)
#endif
extern "C" MYDLL_API int add(int a, int b)
{
return a + b;
}
```
注意:在编译C++代码时需要将其编译为动态链接库(DLL)文件,并且需要定义导出函数的宏(如上方的`MYDLL_EXPORTS`)。在Python端调用时需要使用`ctypes`模块加载该DLL文件并调用其中的函数,需要注意函数参数和返回值类型的设置。
阅读全文