gpt4 book ai didi

objective-c - 可变长度数组声明的解决方法不能有 'static' 错误

转载 作者:太空宇宙 更新时间:2023-11-04 06:32:56 25 4
gpt4 key购买 nike

你好:试图为上面提到的错误找出一个解决方法,该错误需要在静态数组 arInterpolateFin 的下标声明中使用硬编码整数。

我已经在 ProcessSamples 中尝试了局部变量,但我仍然收到错误。将作为返回数组接收者的调用代码对象是本地 malloc 数组。

有什么建议吗?我想保留这个结构,因为它可以非常快速地处理许多元素。

(SInt16*) ProcessSamples:(SInt16)arBufferRaw : (int) numSamples;
{
int tmpInt = numSamples
static SInt16 arInterpolateFin[tmpInt];//4201930

for (int i = 0; i<(95); i++ )
{
arInterpolateFin[tmp1st]=10000;
tmp1st+=44099;
}
return arInterpolateFin;
}

最佳答案

认识 malloc()static 关键字在这里没有任何意义。

SInt16 *arr = malloc(numSamples * sizeof(arr[0]));

当您不再需要它时,不要忘记free()调用方内部返回的指针。

此外,我看不出 tmpInt 变量的用途。这只会让代码更难理解。

关于objective-c - 可变长度数组声明的解决方法不能有 'static' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18686496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com