Warning: main(/www/www/htdocs/style/globals.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pread.html on line 1
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/globals.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pread.html on line 1
Warning: main(/www/www/htdocs/style/header.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pread.html on line 8
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/header.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pread.html on line 8
Read from a file without moving the file pointer
#include <unistd.h>
ssize_t pread(int filedes,
void *buff,
size_t nbytes,
off_t offset );
ssize_t pread64( int filedes,
void *buff,
size_t nbytes,
off64_t offset );
- filedes
- The descriptor of the file that you want to read from.
- buff
- A pointer to a buffer where the function can store the data that it reads.
- nbytes
- The number of bytes that you want to read.
- offset
- The desired position inside the file.
libc
Use the -l c option to
qcc
to link against this library.
This library is usually included automatically.
The pread() function performs the same action as
read(),
except that it reads from a given position in the file
without changing the file pointer.
The pread() function reads up to the maximum offset
value that
can be represented in an off_t for regular files. An
attempt to perform a pread() on a file that's incapable of
seeking results in an error.
The pread64() function is a 64-bit version of pread().
The number of bytes actually read, or -1 if an error occurred
(errno
is set).
- EAGAIN
- The O_NONBLOCK flag is set for the file descriptor, and
the process would be delayed in the read operation.
- EBADF
- The file descriptor, fildes, isn't a valid file descriptor
open for reading.
- EINTR
- The read operation was interrupted by a signal, and either no data was
transferred, or the resource manager responsible for that file does not
report partial transfers.
- EIO
- A physical I/O error occurred (for example, a bad block on a disk). The
precise meaning is device-dependent.
- ENOSYS
- The pread() function isn't implemented for the
filesystem specified by filedes.
pread() is
POSIX 1003.1 XSI;
pread64() is
Large-file support
Safety: | |
Cancellation point |
Yes |
Interrupt handler |
No |
Signal handler |
Yes |
Thread |
Yes |
close(),
creat(),
dup(),
dup2(),
errno,
fcntl(),
lseek(),
open(),
pipe(),
pwrite(),
read(),
readblock(),
readv(),
select(),
write(),
writeblock(),
writev()
Warning: main(/www/www/htdocs/style/footer.php) [function.main]: failed to open stream: No such file or directory in /www/www/docs/6.4.1/neutrino/lib_ref/p/pread.html on line 196
Warning: main() [function.include]: Failed opening '/www/www/htdocs/style/footer.php' for inclusion (include_path='.:/www/www/common:/www/www/php/lib/php') in /www/www/docs/6.4.1/neutrino/lib_ref/p/pread.html on line 196