我有一个目标c函数,一行执行此操作:
for(int k=0;k<numOfBuffers;k++)
{
float *temp=getFFT(buffersRing[k],buffersRing[k][0]);
......// do stuff with temp
fft函数返回指向512个浮点数组的指针
float* getFFT(int16_t *q, int bufferL)
我的问题:
*temp
的函数内部,我是否需要稍后free
所有临时指针,或者它们是否自动超出了该函数?for loop
之后释放这个空间INSIDE那个函数,我该怎么做(在代码中......)
感谢。答案 0 :(得分:1)
指针temp
本身是函数内部的自动变量;当函数退出时它会消失。
temp
指针指向的内存不会自动取消分配。
您必须知道getFFT()
函数是否期望调用者释放内存。这可以通过任何一种方式实现,并且从您显示的API中不清楚。
答案 1 :(得分:0)