结构体的初始化问题
程序代码:#include<stdio.h>
struct st1
{
int num;
int height;
};
extern st1 t[10];
#define COUNT sizeof(t)/sizeof(t[0])
void input()
{
int i=0;
while(i < COUNT)
{
puts("输入编号 身高");
scanf("%d %d",&t[i].num,&t[i].height);
if(t[i++].num == -1)
break;
}
}
st1 t[10];
int main()
{
st1 t[10] = {0};//初始化先于input函数,为什么作为整体变量后,初始化后再赋值不能赋值上????
input(); //( ﹁ ﹁ ) ~→
int i=0;
while(i<COUNT)
printf("the %d-ed num %d,height is%d\n",i,t[i].num,t[i++].height);
return 0;
}初始化先于input函数,为什么作为整体变量后,初始化后再赋值不能赋值上????
去掉这一个初始化语句就可以了。但是why
求大神指点




