c語(yǔ)言中seek函數(shù)怎么調(diào)用

小億
623
2023-09-13 21:00:33

在C語(yǔ)言中,seek函數(shù)用于設(shè)置文件指針的位置。其調(diào)用方式如下:

#include <stdio.h>
int fseek(FILE *stream, long offset, int origin);

其中,stream是指向文件的指針;offset是偏移量,表示要移動(dòng)的字節(jié)數(shù);origin是起始位置,可以取以下值:

  • SEEK_SET:從文件開(kāi)頭開(kāi)始計(jì)算偏移量。

  • SEEK_CUR:從當(dāng)前位置開(kāi)始計(jì)算偏移量。

  • SEEK_END:從文件末尾開(kāi)始計(jì)算偏移量。

seek函數(shù)的返回值為0表示成功,非零值表示失敗。

以下是一個(gè)示例:

#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "r");
if (file == NULL) {
printf("無(wú)法打開(kāi)文件\n");
return 1;
}
// 設(shè)置文件指針的位置為從文件開(kāi)頭偏移5個(gè)字節(jié)
fseek(file, 5, SEEK_SET);
// 讀取文件指針當(dāng)前位置的字符
int ch = fgetc(file);
printf("%c\n", ch);
fclose(file);
return 0;
}

在上面的示例中,首先打開(kāi)名為example.txt的文件。然后,使用fseek函數(shù)將文件指針的位置從文件開(kāi)頭偏移5個(gè)字節(jié)。最后,使用fgetc函數(shù)讀取文件指針當(dāng)前位置的字符,并將其打印出來(lái)。

0