通过文件操作我们可以实现对通讯录的保存,但是要在文件的具体位置进行操作,又要怎么实现呢?下面我们介绍与随机读取操作有关的三个函数。
fseek函数
fseek函数可以实现文件指针的偏移操作。
fseek函数的声明如下
int fseek(FILE *stream, long int offset, int whence)
其中stream为要操作的文件指针,offset则为文件指针的偏移量,whence则为偏移offset的起始位置,whence一般指定为SEEK_SET:文件的起始位置、SEEK_END:文件的末尾、SEEK_CUR:文件指针的当前位置。
例如
fseek(pf,3,SEEK_CUR);
就可以使pf指针指向文件起始位置偏移量为3的元素。
ftell函数
ftell函数可以返回文件指针当前位置与文件的起始位置的偏移量。
ftell函数的声明如下
long int ftell(FILE *stream)
rewind函数
rewind函数可以使文件指针回到文件的起始位置。
rewind函数的声明如下
void rewind(FILE *stream)
了解了这三个函数,就可以实现对文件的随机读取啦。