如何将array float *转换为float **?

时间:2014-05-10 12:00:48

标签: c++ arrays pointers floating-point buffer

我有一个期望像这样的参数的函数:

fooReplace(float** input, float** output, int blockSize);

我需要将包含两个数据数组的缓冲区传递给fooReplace。我可以像这样访问缓冲区数据:

float* data = buffer->getData(); // return float*;
int mBlockSize = buffer->getOffset(); //

但我无法弄清楚如何将其转换为float**,因此我可以将数据传递到fooReplace

我知道这是基本的C ++内容,但我坚持了几天,我找不到任何解决方案。

1 个答案:

答案 0 :(得分:0)

如果是为了演员,你可以做

float* data = buffer->getData(); // return float*;
int mBlockSize = buffer->getOffset(); //
float** data_ptr = &data; // is of type float**

然而,作为@Cheers和hth。 - Alf在评论中指出你应该试着理解为什么fooReplace想要一个指向指针的指针。