gpt4 book ai didi

无法解决使用 C 中函数的指针返回数组的错误?

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

<分区>

我试图通过一个函数接收一些浮点变量,然后将它们传递给 main 并将它们存储在 main 中的另一个数组中。数组的大小由用户指定,所以我使用的是变长数组。我已经搜索并阅读了有关从函数返回数组的类似问题,但找不到解决我代码中错误的方法。

为方便起见,我对原始代码进行了总结,并仅包含与此问题相关的行。

float *receiveFloatValues(int numOfValues);

int main(void)
{
int numberOfValues;
float *receivedValues;

printf("\nHow many values? ");
scanf("%d", &numberOfValues);

receivedValues = receiveFloatValues(numberOfValues);

float valuesArray[numberOfValues];

for (int counter = 0; counter < numberOfValues; counter++)
{
receivedValues += counter;
valuesArray[counter] = *receivedValues;
}

for (int counter = 0; counter < numberOfValues; counter++)
{
printf("\nvaluesArray[%d]: %.2f", counter, valuesArray[counter]);
}
return(0);
}

float *receiveFloatValues(int numOfValues)
{
static float values[numOfValues];
for (int counter = 0; counter < numOfValues; counter++)
{
printf("\nEnter value %d: ", counter + 1);
scanf("%.2f", &values[counter]);
}
return(values);
}

我的预期结果是显示从用户收到的浮点值列表,但我收到以下错误消息:

C2057:预期的常量表达式

C2133:未知大小

C2466: 无法分配常量大小为 0 的数组

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