我一直在寻找这个解决方案,但找不到解决方案。一些解决方案建议使用“系统”功能。然而,这个建议随后总是会有10个人说永远不会使用系统,因为它缺乏线程安全性。有谁知道怎么做?
只是一些信息:我的python脚本获取并解析来自互联网的JSON,然后创建一个文本文件,然后c程序使用。所以,我不想再运行一个,而是另一个,我想从C语言中连续运行它们。
编辑:Grammer答案 0 :(得分:2)
您可以在c,c ++中使用系统功能
像这样 system("python ashouri.py");
或
使用此代码
static PyObject *my_callback = NULL;
static PyObject *
my_set_callback(PyObject *dummy, PyObject *args)
{
PyObject *result = NULL;
PyObject *temp;
if (PyArg_ParseTuple(args, "O:set_callback", &temp)) {
if (!PyCallable_Check(temp)) {
PyErr_SetString(PyExc_TypeError, "parameter must be callable");
return NULL;
}
Py_XINCREF(temp); /* Add a reference to new callback */
Py_XDECREF(my_callback); /* Dispose of previous callback */
my_callback = temp; /* Remember new callback */
/* Boilerplate to return "None" */
Py_INCREF(Py_None);
result = Py_None;
}
return result;
}
成功