1.当读入普通文件的时候,如果在读取出要求的字节数之前到达了文件的末尾。比如:文件里面还有30个字节没有读区,但是我们要求读100个,这次读取返回30,下次返回0(end of file).2.当从终端设备读取的时候。正常,一次读取一行3.当从网络读取的时候。在网络里面的buffer可能会使返回的字节总数少于要求数。4.当从pipe或者FIFO读取的时候。,如果pipe里面的字节数少于需求的,那么只会返回可提供的。5.当从记录设备里面读取的时候。一些记录设备,比如磁带,每次会返回一个记录。6.当被信号中断时,会返回已经被读入的数据。