Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
READ(3)			   Library Functions Manual		       READ(3)

NAME
       read, readn, write, pread, pwrite - read	or write file

SYNOPSIS
       #include	<u.h>
       #include	<libc.h>

       long read(int fd, void *buf, long nbytes)

       long readn(int fd, void *buf, long nbytes)

       long write(int fd, void *buf, long nbytes)

       long pread(int fd, void *buf, long nbytes, vlong	offset)

       long pwrite(int fd, void	*buf, long nbytes, vlong offset)

DESCRIPTION
       Read  reads nbytes bytes	of data	from the offset	in the file associated
       with fd into memory at buf.  The	offset is advanced by  the  number  of
       bytes  read.   It is not	guaranteed that	all nbytes bytes will be read;
       for example if the file refers to the console, at most one line will be
       returned.  In any event the number of bytes read	is returned.  A	return
       value of	0 is conventionally interpreted	as end of file.

       Readn is	just like read,	but does successive read  calls	 until	nbytes
       have been read, or a read system	call returns a non-positive count.

       Write  writes  nbytes bytes of data starting at buf to the file associ-
       ated with fd at the file	offset.	 The offset is advanced	by the	number
       of  bytes  written.   The  number of characters actually	written	is re-
       turned.	It should be regarded as an error if this is not the  same  as
       requested.

       Pread and Pwrite	equivalent to a	to offset followed by a	read or	write.
       By combining the	operations in a	single atomic call, they more  closely
       match  the 9P protocol (see intro(9p)) and, more	important, permit mul-
       tiprocess programs to execute multiple concurrent read and write	opera-
       tions on	the same file descriptor without interference.

SOURCE
       /src/lib9/readn.c

SEE ALSO
       open(3),

DIAGNOSTICS
       These functions set errstr.

								       READ(3)

NAME | SYNOPSIS | DESCRIPTION | SOURCE | SEE ALSO | DIAGNOSTICS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=read&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help