int main()
{
int i = 0;
int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
for (i = 0; i <= 12; i++) //注意这里循环的次数
{
printf("hello\n");
arr[i] = 0;
}
return 0;
}
以上代码在vc2022上运行时出现死循环,这里注意要在环境下会出现死循环。具体原因如下:
局部变量在栈区默认从高位开始存储
栈区的默认使用:
先使用高处地址处的空间
后使用低处地址处的空间
数组随着下标的增长
地址是由低到高变化的