我有一个C API,其函数适用于以下C结构:
const string inputFile = @"../NolekWPF.DataAccess/Nolek.edmx";
我正在为这个C API构建一个python包装器,所以我需要将这个结构定义为一个继承自' Structure'在ctypes中的类,然后给_field_赋值。但是mpq_ptr,mpfr_ptr是mpfr.h中的类型,并且没有相应的ctypes类型。有没有办法解决这个问题?
我想在python中获得的内容如下:
typedef struct s_t{
mpq_ptr mpq;
mpfr_ptr mpfr;
} s_t;
这样我就可以在python中创建这样的对象,并将它们传递给相应的C函数,这些函数将s_t作为输入参数。
答案 0 :(得分:0)
我通过跟踪mpfr.h和gmp.h文件中的所有typedef并在python中创建所有必需的结构来解决这个问题:
class Mpz(Structure):
# define struct manually
class Mpq(Structure):
# define struct manually
class Mpfr(Structure):
# define struct manually