⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fgetpos.c

📁 用于嵌入式Linux系统的标准C的库函数
💻 C
字号:
/*FUNCTION<<fgetpos>>---record position in a stream or fileINDEX	fgetposINDEX	_fgetpos_rANSI_SYNOPSIS	#include <stdio.h>	int fgetpos(FILE *<[fp]>, fpos_t *<[pos]>);	int _fgetpos_r(struct _reent *<[ptr]>, FILE *<[fp]>, fpos_t *<[pos]>);TRAD_SYNOPSIS	#include <stdio.h>	int fgetpos(<[fp]>, <[pos]>)	FILE *<[fp]>;	fpos_t *<[pos]>;	int _fgetpos_r(<[ptr]>, <[fp]>, <[pos]>)	struct _reent *<[ptr]>;	FILE *<[fp]>;	fpos_t *<[pos]>;DESCRIPTIONObjects of type <<FILE>> can have a ``position'' that records how muchof the file your program has already read.  Many of the <<stdio>> functionsdepend on this position, and many change it as a side effect.You can use <<fgetpos>> to report on the current position for a fileidentified by <[fp]>; <<fgetpos>> will write a valuerepresenting that position at <<*<[pos]>>>.  Later, you canuse this value with <<fsetpos>> to return the file to thisposition.In the current implementation, <<fgetpos>> simply uses a charactercount to represent the file position; this is the same number thatwould be returned by <<ftell>>.RETURNS<<fgetpos>> returns <<0>> when successful.  If <<fgetpos>> fails, theresult is <<1>>.  Failure occurs on streams that do not supportpositioning; the global <<errno>> indicates this condition with thevalue <<ESPIPE>>.PORTABILITY<<fgetpos>> is required by the ANSI C standard, but the meaning of thevalue it records is not specified beyond requiring that it beacceptable as an argument to <<fsetpos>>.  In particular, otherconforming C implementations may return a different result from<<ftell>> than what <<fgetpos>> writes at <<*<[pos]>>>.No supporting OS subroutines are required.*/#include <stdio.h>int_DEFUN (_fgetpos_r, (ptr, fp, pos),	struct _reent * ptr _AND	FILE * fp _AND	_fpos_t * pos){  _flockfile(fp);  *pos = _ftell_r (ptr, fp);  if (*pos != -1)    {      _funlockfile(fp);      return 0;    }  _funlockfile(fp);  return 1;}#ifndef _REENT_ONLYint_DEFUN (fgetpos, (fp, pos),	FILE * fp _AND	_fpos_t * pos){  return _fgetpos_r (_REENT, fp, pos);}#endif /* !_REENT_ONLY */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -