C语言数组索引溢出

来源:百度知道 编辑:UC知道 时间:2024/05/21 10:05:55
#include<iostream.h>
int main()
{
int i,j[8];
for(i=0;i<30;i++)
{
j[i]=0;
cout<<j[i]<<endl;
}
return 1;
}
这个程序为什么会出现死循环?

你可以用vc的debug模式看看当j[i]溢出的时候因该是指向了i的地址,当你执行j[i]时,把i的值复值成了0,所以你永远也跳不出这个循环

因为你的j数组开的太小了
int i, j[30];
改成这样就行