Я написал приложение C
, которое использует некоторый код python
, заключенный в cython
, чтобы упростить некоторые вещи.
Что я хочу сделать, это вернуть массив из функции python
, вызываемой в C
.
main. c
PyImport_AppendInittab("wrapper", PyInit_libwrapper);
Py_Initialize();
PyObject *module = PyImport_ImportModule("wrapper");
char *names[] = get_names();
Py_Finalize();
wrapper.pyx
cdef public void get_names():
names = []
names.append('ABCD')
names.append('1234')
names.append('abcd')
return names
return names_size
Можно ли в этом случае вернуть массив chars*
?
Для обработки массива в C
мне также нужно иметь его размер, но я не могу передать int size
по ссылке.
Какой лучший способ справиться с этим?