.\" @(#)fseek.3 6.2 (Berkeley) 10/30/85 .\" .TH FSEEK 3S "" .AT 3 .SH NAME fseek, ftell, rewind \- reposition a stream .SH SYNOPSIS .B #include .PP .B long fseek(stream, offset, ptrname) .br .SM .B FILE .B *stream; .br .B long offset; .PP .B long ftell(stream) .br .SM .B FILE .B *stream; .PP .B rewind(stream) .SH DESCRIPTION .I Fseek sets the position of the next input or output operation on the .IR stream . The new position is at the signed distance .I offset bytes from the beginning, the current position, or the end of the file, according as .I ptrname has the value 0, 1, or 2. .I Fseek returns \-1 for improper seeks, otherwise it returns the new value of the offset relative to the beginning of the file associated with the named .IR stream . .PP .I Fseek undoes any effects of .IR ungetc (3S). .PP .I Ftell returns the current value of the offset relative to the beginning of the file associated with the named .IR stream . It is measured in bytes on UNIX; on some other systems it is a magic cookie, and the only foolproof way to obtain an .I offset for .IR fseek . .PP .IR Rewind ( stream ) is equivalent to .IR fseek ( stream , 0L, 0). .SH "SEE ALSO" lseek(2), fopen(3S)