有问题所以,我在我的程序中有这个功能,它应该将“car_str”结构保存到指定为参数的文件的所需位置。但是当我运行它时,它会一次又一次覆盖第一个插槽,就好像fseek没有指向文件中的指定位置。我的代码有问题吗?我认为这可能与乘法有关,因为如果没有它,程序会很好,但我不能指向我想要的地方。fseek()在C
void save(int car_nbr)
{
FILE *f;
f = fopen("memory.txt","wb");
if (!f)
{
printf ("error");
}
else
{
car_nbr--;
fseek(f, sizeof(struct car_str)*car_nbr, SEEK_SET);
fwrite(&car,sizeof(struct car_str),1,f);
rewind(f);
fclose(f);
printf("\nsaved");
}
}
乘法给你什么? – dutt
'fseek'有一个返回值,告诉你它是否成功。你应该检查返回值。这是你期望的吗? – abelenky
它应该给(car_nbr)乘以我的结构的字节大小 – SergiBJ