文件位置指针
-
与标准IO的文件读写位置指针一样,系统IO时也会有一个表示位置的指针在移动,会随着读写操作的执行向后自动移动
-
当需要随机位置进行读写操作时,那么需要移动位置指针的位置
off_t lseek(int fd, off_t offset, int whence); 功能:调整文件指针的位置 fd:要调整的文件描述符 offset: 偏移值 whence:基础位置 SEEK_SET 文件开头 SEEK_CUR 当前位置 SEEK_END 文件末尾 返回值:返回当前位置指针的位置 从文件开头计算该位置的字节数 注意:系统IO中不需要ftell函数的系统调用,因为lseek就能够完成获取位置指针位置的功能
-
当超过文件末尾的位置再写入数据时,原末尾与最后的数据之间会有一个“数据黑洞”,但是黑洞不占用磁盘大小,但是会计算成文件的大小,不会影响后序的读写