gpt4 book ai didi

c++ - 改名查找?

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

我有以下代码,编译器说“'i' 的名称查找已更改...”。设置-fpermissive,它可以通过编译器...

for (i=1;i<MAXINUMBER-1;i++)
{
for (j=i;j>0;j--)
{
if (a[j]>a[j-1])
{
temp=a[j-1];
a[j-1]=a[j]; a[j]=temp;
}
else
break;
}
}

但我不认为我已经改变了'i'......那么我错过了什么吗?非常感谢你们...

最佳答案

很简单,

//the int i declaration below is like it's within the {} block
for (int i = 0; i < 10; i++)
{
//do something
}

//i is out of scope here, you can't use i any more, u must redeclare
//int i = 5; //ok!
//for (int i = 0; i < 20; i++) //ok!
for (i = 0; i < 20; i++) //no, you can't do this

两种方法解决你的问题,

一、把i声明放到外面

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

二、再次声明i

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

关于c++ - 改名查找?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21328923/

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