溫馨提示×

C語言fseek()函數的用法是什么

小億
170
2023-12-02 00:04:40
欄目: 編程語言

fseek()函數是C語言中的文件操作函數之一,用于在文件中定位指針的位置。

函數原型:int fseek(FILE *stream, long int offset, int origin);

參數說明:

  • stream:指向FILE對象的指針,表示要操作的文件流。
  • offset:表示要移動指針的位置,可以是正數、負數或零。正數表示向文件末尾方向移動,負數表示向文件開頭方向移動,零表示不移動。
  • origin:表示起始位置,可以是以下三個值之一:
    • SEEK_SET:從文件開頭開始計算偏移量。
    • SEEK_CUR:從當前位置開始計算偏移量。
    • SEEK_END:從文件末尾開始計算偏移量。

返回值:

  • 成功時返回0,失敗時返回非零值。

使用fseek()函數可以實現以下操作:

  1. 移動文件指針到指定位置。
  2. 在文件中進行隨機訪問。
  3. 修改文件中的內容。
  4. 截斷文件長度。

注意事項:

  • 文件必須是以二進制方式打開的。
  • 文件指針的位置不能超出文件的范圍。

示例代碼:

#include <stdio.h>

int main() {
    FILE *file = fopen("example.txt", "r");
    if (file == NULL) {
        printf("文件打開失敗\n");
        return 1;
    }

    // 移動文件指針到文件末尾
    fseek(file, 0, SEEK_END);

    // 獲取文件長度
    long int size = ftell(file);
    printf("文件長度:%ld\n", size);

    // 關閉文件
    fclose(file);

    return 0;
}

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女