Contents|Index|Previous|Next

ftell
[return position in a stream or file]

SYNOPSIS
#include <stdio.h>
long ftell(FILE *fp);

DESCRIPTION
Objects of type, FILE, can have a position that records how much of the file your program has already read. Many of the stdio functions depend on this position, and many change it as a side effect.

The result of ftell is the current position for a file identified by fp. If you record this result, you can later use it with fseek to return the file to this position.

In the current implementation, ftell simply uses a character count to represent the file position; this is the same number that would be recorded by fgetpos.

RETURNS
ftell returns the file position, if possible. If it cannot do this, it returns -1L. Failure occurs on streams that do not support positioning; the global, errno, indicates this condition with the value, ESPIPE.

COMPLIANCE
ftell is required by the ANSI C standard, but the meaning of its result (when successful) is not specified beyond requiring that it be acceptable as an argument to fseek. In particular, other conforming C implementations may return a different result from ftell than what fgetpos records.

No supporting OS subroutines are required.