当前位置: 代码迷 >> C语言 >> 内存不能read的错误
  详细解决方案

内存不能read的错误

热度:470   发布时间:2007-05-30 20:20:27.0
内存不能read的错误
写了个录入学生信息的函数,执行到输入学号那就会出现内存不能read的字样,我照着这个贴(http://bbs.bc-cn.net/viewthread.php?tid=141458&star=at#)写的,基本差不多啊
程序代码:
void addstudent()
{
int count;
char ch;

system(\"cls\");
if((student=fopen(filename1,\"a+b\"))==NULL)
{
printf(\"不能打开文件,请确认磁盘已满或c:\\学生信息.dat文件没有损坏\");
getch();
exit(1);
}
rewind(student); //定位文件头开始读取
for(count=0;fread(&head[count],sizeof(struct student),1,student)==1;count++)
{
continue;
}
printf(\"\n=======================信息登记表===========================\n\");

printf(\"---------------------------------------------------------\n\n\");
printf(\"学 号:\");
while(gets(head[count].num)!=NULL ) //输入学号
{
printf(\"\n姓 名:\");
gets(head[count].name); //输入姓名
printf(\"\n年 龄:\");
gets(head[count].age); //输入年龄
fwrite(&head[count++],sizeof(struct student),1,student); //将信息写入文件

printf(\"是否录入下一个学生信息(y/n)\");
ch=getch();
if(ch=='y'||ch=='Y')
{
system(\"cls\");
printf(\"\n请输入下一个学生的个人信息\n\");
printf(\"\n学 号:\");
continue;
} //继续输入下一个学生信息
else
{
printf(\"\n\n个人信息录入结束,返回!\");
fclose(student); //关闭文件
getch(); //返回子菜单
system(\"cls\");
return ;
}
}
printf(\"输入有误,终止个人信息录信,返回!\");
getch();
system(\"cls\");
return ; //返回
}
搜索更多相关的解决方案: 内存  read  

----------------解决方案--------------------------------------------------------
  相关解决方案