[英]How to use SEEK_CUR on a FILE*
offset=ftell(ptr)-sizeof(student1);
fseek(ptr,offset,SEEK_SET);
fwrite(&student1,sizeof(student1),1,ptr);
该C代码意味着将指针从当前位置ftell(ptr)
到刚刚读取的结构块的开始。 我对吗?
如果我是对的,我可以使用SEEK_CUR
而不是SEEK_SET
返回文件中结构块的开头吗?
请告诉我如何使用SEEK_CUR
并向后开始结构块。
我是编程的新手。 所以请帮助我。
编辑:谢谢你的回答。 我要做的是搜索关键字(学生的卷号)并更新该学生的信息(姓名,地址,......)。 更新的数据将成功替换以前的数据。 请让我再问一个问题。 有没有办法将新数据插入上一个数据之上,而不是用旧数据替换它?
该C代码意味着将指针从当前位置[ftell(ptr)]移动到刚刚读取的结构块的开始。 我对吗?
我认同。
请告诉我如何使用SEEK_CUR并向后开始结构块。
您可以使用负偏移量。
#include <stdio.h>
fseek (ptr, -sizeof student1, SEEK_CUR);
无论如何,你应该避免这些电话; 它可能会很慢。 使用相当顺序的阅读。
尝试:
fseek(ptr, -sizeof(student1), SEEK_CUR);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.