这个问题的标题可能有点令人困惑。
我想用cffi在python中调用C函数。这是一种压缩功能。函数的一部分看起来像这样:
int compression_float_3d(float* array, int nx, int ny, int nz)
{
...
void* buffer;
...
// allocate buffer for compressed data
buffer = malloc(bufsize);
...
// compress the array
size = compress(...);
}
在此函数中,压缩后的数组存储在缓冲区指针中。在调用该函数之前,我不知道压缩数组的大小,在调用它之后我将知道该大小。我想获取压缩数组,并且不想将其写入文件。因此,我正在考虑如何从函数中获取缓冲区指针。我不知道我应该传递给函数什么。还是应该更改此函数的返回类型?