Home C&C++函数库 c++ 语法 程序源码 Linux C库

fgetpos

函数  <cstdio>

int fgetpos ( FILE * stream, fpos_t * pos );

获取流中的当前位置

检索流中的当前位置。

该函数使用流的位置指示器的信息填充pos指向的fpos_t对象,以便(需要时)通过调用fsetpos将流恢复到当前位置 (以及多字节状态,如果是面向宽字符的)。

ftell函数可用于以整数值的形式检索流中的当前位置。

☲  参数



stream
指向标识流的FILE对象的指针。

pos
指向fpos_t对象的指针。
这应该指向一个已经分配的对象。

☉  返回值



如果成功,函数返回0。

在出现错误的情况下,errno被设置为特定于平台的正值,函数返回一个非零值。

☣  示例



/* fgetpos example */
#include <stdio.h>
int main ()
{
   FILE * pFile;
   int c;
   int n;
   fpos_t pos;

   pFile = fopen ("myfile.txt","r");
   if (pFile==NULL) perror ("Error opening file");
   else
   {
     c = fgetc (pFile);
     printf ("1st character is %c\n",c);
     fgetpos (pFile,&pos);
     for (n=0;n<3;n++)
     {
        fsetpos (pFile,&pos);
        c = fgetc (pFile);
        printf ("2nd character is %c\n",c);
     }
     fclose (pFile);
   }
   return 0;
}
可能的输出(myfile.txt包含ABC):
1st character is A
2nd character is B
2nd character is B
2nd character is B

🍄  另请参阅



fsetpos 设置流位置指示器(function )
ftell 获取流中的当前位置(function )
fseek 重新定位流位置指示器(function )

联系我们 免责声明 关于CandCplus 网站地图