0
为什么以下程序不打印垃圾值。据我所知,数组分配的内存(即在编译时)和堆栈内存包含一些垃圾值。但它不打印垃圾值。它是打印1的。只有在函数g()中,数组b的大小b>数组a的大小时,它才会打印垃圾值。当数组的大小在g()>数组a的大小时,它将打印12个1(在这种情况下)并作为垃圾值休息。不打印垃圾值
void f()
{
int a[12],i=0;
for(i=0;i<12;i++)
a[i]=1;
}
void g()
{
int b[12],i=0;
for(i=0;i<12;i++)
printf("%d\n",b[i]);
}
int main()
{
f();
g();
return 0;
}
分配给数组b的内存是否与先前分配给数组a的内存相同?