C++指针访问出错,请问是什么原因,如何修改才能保证不会出错?谢谢
intmain(){intnumber=0;intindex=0;intppA[100];for(inti=0;i<100;i++){ppA[i]=i;}while((p...
int main()
{
int number = 0;
int index = 0;
int ppA[100];
for (int i = 0; i < 100; i++)
{
ppA[i] = i;
}
while ((ppA + index) != NULL && ppA[index] >= 0)
{
number++;
index += index0 + number;
}
return 0;
} 展开
{
int number = 0;
int index = 0;
int ppA[100];
for (int i = 0; i < 100; i++)
{
ppA[i] = i;
}
while ((ppA + index) != NULL && ppA[index] >= 0)
{
number++;
index += index0 + number;
}
return 0;
} 展开
1个回答
展开全部
ppA的数组大小是100,>=100肯定报数组越界错误
while ( (index<100)&& (ppA + index) != NULL && ppA[index] >= 0)
{
number++;
index += index0 + number;
}
while ( (index<100)&& (ppA + index) != NULL && ppA[index] >= 0)
{
number++;
index += index0 + number;
}
更多追问追答
追问
假设这个数组的大小(100)你是不知道的,怎么得到这个number的值?
while ( (ppA + index) != NULL && ppA[index] >= 0)
{
number++;
index += index0 + number;
}
追答
sizeof(ppA)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询