#include <stdio.h>int fgetpos(FILE *stream, fpos_t *pos);
The fgetpos() function stores the current value of the 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(3C) for repositioning the stream to its position at the time of the call to fgetpos().
Upon successful completion, fgetpos() returns 0. Otherwise, it returns a non-zero value and sets errno to indicate the error.
The fgetpos() function may fail if:
The file descriptor underlying stream is not valid.
The file descriptor underlying stream is associated with a pipe, a FIFO, or a socket.
The current value of the file position cannot be represented correctly in an object of type fpos_t.
The fgetpos() function has a transitional interface for 64-bit file offsets. See lf64(5).