[英]Error in fread fwrite in loop - C
我有一个文件IO系统,在其中存储结构体。在代码中,我想一一读取所有结构体,并在每个结构体中将变量“ pay”设置为0,然后再次将其写入文件中
long int recsize;
recsize=sizeof(payment);
f=fopen("C:\\HOTEL.DAT", "rb+");
if(f == NULL){
clrscr();
cprintf("File could not be opened!");
sleep(4);
exit(0);
}
while(fread(&payment, recsize, 1, f) == 1){
payment.pay=0;
fseek(f, -recsize, SEEK_CUR);
fwrite(&payment, recsize, 1, f);
}
我遇到了运行时错误,它没有在所有结构中更改变量,而在某些结构中更改了变量
我建议不要尝试将您的数据读取为二进制Blob,而要坚持读取单个字段。 它要健壮得多,尤其是当您甚至想要更改结构时
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.