第1个回答 2014-06-07
大概看了下,有3个问题:
1.全局变量STUDINFO stud[M]没有初始化,因为根据编译器不同,变量的初始值是不一样的,如果是在大项目里这样使用的话,很可能产生一些莫名其妙的错误,而一旦出现就要费很大的力气去定位问题。虽然在这里不会导致大的问题,但是建议从一开始养成给定义变量时初始化的好习惯。
2.循环变量的初始值有问题,应该从0开始,因为你定义的结构体数组长度为5,按照你的写法,最后一条存储位置为stud[5],下表越界。
3.最后存储的时候,没必要一个一个条目写,直接使用fwrite(&stud[0],sizeof(STUDINFO),M,fp)即可。
以上回答你满意么?