返回值
如果成功,此函数将返回零值,否则将返回非零值并将全局变量errno设置为正值,这可以用perror解释。
示例
以下示例显示fsetpos()函数的用法-
#include <stdio.h>
int main () {
FILE *fp;
fpos_t position;
fp = fopen("file.txt","w+");
fgetpos(fp, &position);
fputs("Hello, World!", fp);
fsetpos(fp, &position);
fputs("This is going to override previous content", fp);
fclose(fp);
return(0);
}
让我们编译并运行以上程序,以创建文件file.txt,其中将包含以下内容。首先,我们使用fgetpos()函数获取文件的初始位置,然后编写Hello,World!。在文件中,但后来我们使用fsetpos()函数在文件的开头重置写指针,然后使用以下内容覆盖文件-
This is going to override previous content
现在,让我们使用以下程序查看以上文件的内容:
#include <stdio.h>
int main () {
FILE *fp;
int c;
fp = fopen("file.txt","r");
while(1) {
c = fgetc(fp);
if( feof(fp) ) {
break;
}
printf("%c", c);
}
fclose(fp);
return(0);
}
让我们编译并运行上述程序以产生以下结果-
This is going to override previous content