深入解析Linux系统调用函数read及其相关操作详解
相关函数:readdir、write、fcntl、close、lseek、readlink、fread

头文件:#include
定义函数:ssize_t read(int fd, void * buf, size_t count);
函数说明:read()将从参数fd指向的文件中传输count个字节到buf指针指向的内存中。如果参数count为0,read()将不起作用并返回0。返回值是实际读取的字节数。如果返回0,则表示已到达文件末尾或没有数据可读取。另外,文件读写位置会随着读取的字节数而移动。
附加说明:
如果read()顺利进行,它将返回实际读取的字节数。最好将返回值与参数计数进行比较。如果返回的字节数小于需要读取的字节数,则可能已读取到文件末尾。 ,从管道或终端读取? ?ead() 的读取操作被信号中断。
发生错误时返回-1,错误代码存储在errno中,文件读写位置不可预测。
错误代码:
EINTR 此调用被信号中断。
EAGAIN 当使用不可阻塞 I/O (O_NONBLOCK) 时,如果无法读取数据,则返回该值。
EBADF 参数 fd 不是有效的文件描述符,或者文件已关闭。
例如,请参阅 open()。
« 上一篇
深入探讨PHP中四舍五入的实现方法及应用场景