gpt4 book ai didi

c++ - 错误 : name lookup of 'i' changed for ISO 'for' scoping

转载 作者:行者123 更新时间:2023-11-28 00:22:59 25 4
gpt4 key购买 nike

我已经查看了与此类似的其他主题,但仍然无法找出我的代码有什么问题。以下是我程序中的一个函数,用于查找数组的均值(平均值)。我在标题中收到错误:错误:'i' 的名称查找已更改为 ISO 'for' 范围。后跟注释:如果您使用 '-fpermissize',g++ 将接受您的代码。

double GetMean ( double Array[], int ArrayLength )
{
int Sum, Mean;
for ( int i = 0; i < ArrayLength; i++ )
{
Sum = Sum + Array[i];
}

Mean = Sum / Array[i];

return Mean;
}

想法和解释会很可爱,这样我就能明白我到底做错了什么:/

最佳答案

for (int i = 0; i < ArrayLength; i++)

当您像这样在for header 中定义i 时,它的范围在for 循环内。您不能在 for 循环之外使用它,例如在您的代码中使用 Mean = Sum/Array[i];

将其更改为:

int i;
for (i = 0; i < ArrayLength; i++)

另请注意,您永远不会初始化 Sum

关于c++ - 错误 : name lookup of 'i' changed for ISO 'for' scoping,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26552165/

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