结构体的初始化问题
程序代码:
#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
求大神指点