dla modułu Pythona tworzę, chcę przekazać użytkownikowi Pythona tablicę kodowanym tak:Python C API Jak przekazać tablicę kodowanym z C na Pythona
struct tcpstat
{
inet_prefix local;
inet_prefix remote;
int lport;
int rport;
int state;
int rq, wq;
int timer;
int timeout;
int retrs;
unsigned ino;
int probes;
unsigned uid;
int refcnt;
unsigned long long sk;
int rto, ato, qack, cwnd, ssthresh;
};
Myślałem, że Py_BuildValues
była funkcją, której szukałem. Ale wydaje się, że tak nie jest. Patrząc w dokumentacji Pythona znalazłem Buffer Protocol. Ale po raz pierwszy opracowuję moduł Pythona, a oficjalna dokumentacja mi nie pomogła.
Czy protokół buforowy jest najlepszym rozwiązaniem dla mojego problemu? Jeśli tak, to w jaki sposób mogę zwrócić tablicę z C do Pythona?
Czy próbowałeś poniższych .. http://stackoverflow.com/questions/4351721/python-ctypes-passing- a-struct-to-a-function-as-a-pointer-to-get-back-data http://forums.indiegamer.com/showthread.php?14280-Embending-Python-into-CC-how -to-send-aC-structure-to-Python –
@HirenPandya: afaik 'ctypes'! =' Python C API'! – Constantinius