C++中嵌入Python的编码

2024-10-02 12:22:57 发布

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

我试图在C++中嵌入Python代码,它编译成功,但是当我尝试运行我的代码时,我得到以下错误。你知道吗

File "./cppPython", line 1
SyntaxError: Non-ASCII character '\x88' in file ./cppPython on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

这些是我的C++和Python代码。你知道吗

CPP code

#include <Python.h>
#include <iostream>

using namespace std;
int main(int argc, char *argv[])
{ 
  FILE *fp = fopen(argv[0],"r");
  Py_SetProgramName(argv[0]);  /* optional but recommended */
  Py_Initialize();

  PyRun_SimpleFileExFlags(fp,argv[0],0,NULL);

  Py_Finalize();
  return 0;
}
^{2}$
#!/usr/bin/env python
# -*- coding: utf-8 -*-
print "hello"

Tags: 代码pyinclude错误lineasciifilebut
2条回答

您将可执行文件作为Python代码运行,但事实并非如此。验证fopen()PyRun_SimpleFileExFlags()的参数。你知道吗

^ }给出C++可执行名称。如果您将C++可执行文件命名为^ {CD2>},并执行为:

./abc pythonFileName.py

然后argv数组将argv[0]作为./abcargv[1]作为pythonFileName.py。你知道吗

所以,请使用索引1。你知道吗

相关问题 更多 >

    热门问题