.TH LSEEK 2 .CT 2 file_io .SH NAME lseek, llseek \(mi seek, move read/write pointer .SH SYNOPSIS .B long lseek(fildes, offset, whence) .br .B long offset; .PP .B Long llseek(fildes, offset, whence) .br .B Long offset; .SH DESCRIPTION .I Lseek and .I llseek set the file pointer for the file associated with .I fildes as follows: .IP If .I whence is 0, the pointer is set to .I offset bytes. .IP If .I whence is 1, the pointer is set to its current location plus .IR offset . .IP If .I whence is 2, the pointer is set to the size of the file plus .IR offset . .PP The new file pointer value is returned. .PP Type .I Long is a 64-bit quantity. .PP Seeking far beyond the end of a file, then writing, creates a gap or `hole,' which occupies no physical space and reads as zeros. .SH "SEE ALSO" .IR open (2), .IR fseek (3) .SH DIAGNOSTICS .BR EBADF , .BR ESPIPE .SH BUGS .I Lseek doesn't affect some special files.