int fgetpos(FILE *restrict stream, fpos_t *restrictpos);
The fgetpos() function shall store the current values of the
parse state (if any) and file position indicator for the
stream pointed to by stream in the object pointed to by pos.
The value stored contains unspecified information usable
by fsetpos() for repositioning the stream to its position at
the time of the call to
Upon successful completion, fgetpos() shall return 0; otherwise,
it shall return a non-zero value and set errno to
indicate the error.
The fgetpos() function shall fail if:
The current value of the file position cannot be represented correctly
in an object of type fpos_t.
The fgetpos() function may fail if:
The file descriptor underlying stream is not valid.
The file descriptor underlying stream is associated with a pipe,
FIFO, or socket.
The following sections are informative.
fopen() , ftell() , rewind() ,
ungetc() , the Base Definitions volume of IEEE Std 1003.1-2001,
Portions of this text are reprinted and reproduced in electronic form
from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology
-- Portable Operating System Interface (POSIX), The Open Group Base
Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of
Electrical and Electronics Engineers, Inc and The Open Group. In the
event of any discrepancy between this version and the original IEEE and
The Open Group Standard, the original IEEE and The Open Group Standard
is the referee document. The original Standard can be obtained online at