c++中文件读写出错(求助)
Student stud;
fstream iofile("stud.txt);
if(!iofile) return -1;
int t=0;
int n;//n代表用户输入的学号
cin>>n;
while(iofile.read((char *)&stud,sizeof(stud)))
{
if(stud.num==n) //按学号查找文件中的学生记录,并修改其信息
{ cout<<stud.num<<" "<<stud.name<<" "<<stud.score<<endl; //显示欲修改的记录
cout<<"Please edit data:"<<endl;
cin>>stud.num>>stud.name>>stud.score;
iofile.write((char *)&stud,sizeof(stud));
t=1;
break;
}
}
if (t==0)
cout<<"没有此学号记录,无法修改!"<<endl;
iofile.close();
以上是核心代码,stud.txt已经建好,而且里面有一些记录。我运行程序时,发现修改后的数据无法写入到文件中。应该是write函数那里执行的不对。但是不太清楚为什么这样?
read 和write对应的文件指针是不是同一个?还是分别对应读指针和写指针?