2
我只能找到python 2的教程和鏈接,而不是3中的任何一個。 自2以來,很多函數都發生了變化,教程不再有效。如何在C++中正確加載python(3.0)函數
我能夠從另一個問題#1藉此,它似乎是最接近的工作。
char *my_result = 0;
PyObject *module = 0;
PyObject *result = 0;
PyObject *module_dict = 0;
PyObject *func = 0;
PyObject *pArgs = 0;
module = PyImport_ImportModule("testPython");
if (module == 0)
{
PyErr_Print();
printf("Couldn't find python module");
}
module_dict = PyModule_GetDict(module);
func = PyDict_GetItemString(module_dict, "helloWorld");
//result = PyObject_CallObject(func, NULL);
result = PyEval_CallObject(func, NULL);
my_result = PyBytes_AsString(result);
my_result = strdup(my_result);
但my_result輸出0000.並且當使用斷點它說它無法讀取內存。
什麼是不工作?是否有錯誤消息?編譯時?運行? – mgilson
@mgilson我更新了我的底部問題。 「但my_result輸出0000,並使用斷點,它說,它無法讀取內存的時候。」 – user3436172
錯誤處理101:1),檢查返回值2)如果事情無法恢復情況,不要繼續。 –