fseek函數是一個文件定位函數,用于移動文件指針到指定位置。
其函數原型為:
int fseek(FILE *stream, long offset, int whence);
參數說明:
stream:指向文件的指針。
offset:偏移量,表示要移動的字節數。
whence:起始位置,可以是以下幾種值:
SEEK_SET:文件開頭。
SEEK_CUR:當前位置。
SEEK_END:文件末尾。
返回值:
成功時,返回0。
出錯時,返回非0值。
示例使用:
#include <stdio.h>
int main() {
FILE *fp = fopen("file.txt", "r");
if(fp == NULL) {
printf("打開文件失敗\n");
return -1;
}
// 將文件指針移動到文件開頭
fseek(fp, 0, SEEK_SET);
// 讀取文件內容
char ch = fgetc(fp);
while(ch != EOF) {
printf("%c", ch);
ch = fgetc(fp);
}
fclose(fp);
return 0;
}
在這個示例中,首先打開了一個名為file.txt的文件。然后使用fseek函數將文件指針移動到文件開頭。接著使用fgetc函數逐個字符地讀取文件內容,并打印出來。讀取完畢后,關閉文件。