在简单回答“使用 SWIG”或“将其写入磁盘上的文件”之前,请阅读以下内容:
我有一个 C++ 客户端/服务器程序。客户端向服务器请求数据。
服务器生成数据并调用各种例程来检查数据。 如果所有数据都正确,它通过套接字将数据发送给客户端。
我想做的是获取这个原始数据(假设它是一个 String 类型的数据)并替换 我用python程序的“各种套路”。
为此,原始数据将被传递给 python 程序进行解析和检查,然后它们需要将通过/失败值返回给 C++ 服务器。
有什么想法吗?
最佳答案
这与正常的做事方式完全相反,不是吗!
您有两个主要选择:
- 保持 Python 脚本不变,使用
fork()/exec()
或适合您平台的任何方式运行它们,并用 C++ 解析它们的输出; - 使用 CPython 的 well-documented API将其嵌入到您的 C++ 程序中,并以这种方式调用脚本。
关于c++ - 将 C++ 中的原始字符串数据传递给 Python 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8943677/