C语⾔read()函数:读⽂件函数(由已打开的⽂件读取数
据)
相关函数:readdir, write, fcntl, close, lseek, readlink, fread
头⽂件:#include <unistd.h>
定义函数:ssize_t read(int fd, void * buf, size_t count);
函数说明:read()会把参数fd 所指的⽂件传送count 个字节到buf 指针所指的内存中. 若参数count 为0, 则read()不会有作⽤并返回0. 返回值为实际读取到的字节数, 如果返回0, 表⽰已到达⽂件尾或是⽆可读取的数据,此外⽂件读写位置会随读取到的字节移动.
附加说明:
如果顺利 read()会返回实际读到的字节数, 最好能将返回值与参数count 作⽐较, 若返回的字节数⽐要求读取的字节数少, 则有可能读到了⽂件尾、从管道(pipe)或终端机读? ?蛘呤莚ead()被信号中断了读取动作.
当有错误发⽣时则返回-1, 错误代码存⼊errno 中, ⽽⽂件读写位置则⽆法预期.
错误代码:write的返回值
EINTR 此调⽤被信号所中断.
EAGAIN 当使⽤不可阻断I/O 时(O_NONBLOCK), 若⽆数据可读取则返回此值.
EBADF 参数fd ⾮有效的⽂件描述词, 或该⽂件已关闭.

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。