read()函数用于从文件描述符中读取数据。函数原型如下:
fd为文件描述符,用于指定要读取的文件;
buf存储读取数据的缓冲区;
count指定最多能读取到的字节数,为无符号整数类型,数据缓冲区至少应有count个字节;
有多种情况可能导致实际读到的字节数小于要求读的字节数:
一、普通文件:读到要求的字节数前到达文件尾;
二、从终端设备读取:通常一次只能读一行;
三、从网络读取:网络的缓冲机制可能造成返回值小于要求读的;
四、从管道或FIFO读取:若管道包含的字节小于要求读的;
五、当一个信号造成中断,而已经读了部分数据量时;
代码示例:
更多回帖