你没有申请struct的空间,只是声明了啊,在main里加入:
student stu[10]; 就OK了
怎么可能不需要啊,你说链表中需要,那是肯定的
像这样,简单点说就是你把student看成是跟int,float,double一样的基本类型,这样你就会处理了,你认为int stu[10];这样的东西都不需要申请空间吗?如果不申请,那好比这样:
int *a;//这里只有个指针,并没有实际的空间
a=new int(10);这样才做了申请空间的动作;
以上2个语句何以:
int a=10;//这样便达到了上边2条语句的效果
但有一点不同就是new分配的是堆空间,这跟直接int i=10;不一样!
但效果是一样的!
如果是C语言的全局变量,这就不需要申请空间,全局变量生命周期在整个程序开始到结束!