这个是为什么呢嗯。,

img

img

i的值是在for循环里定义的,所以你后面调用会显示i未声明。
如果你想输出数组的值,应该再写一个for循环。
for(int i=0; i<4; i++)
{
printf("%d",a[i]);
}

把printf 放到for 循环体内

问题本质是 i 的作用域问题 导致的 for(int i) 这个i 的作用域只在for 循环体内 也就是循环结束后I 就被释放了