1. Định nghĩa hàm fgetpos() trong C

Hàm fgetpos() trong C được sử dụng để lấy vị trí file hiện tại của stream và ghi nó tới pos. Để khai báo hàm fgetpos() trong C, ta sẽ cần sử dụng cú pháp như sau:

int fgetpos(FILE *stream, fpos_t *pos)

Tham số:

  • stream: Con trỏ tới đối tượng file.
  • pos: Con trỏ tới đối tượng fpos_t.

Lưu ý:

  • Hàm fgetpos() trả về 0 nếu thành công.
  • Hàm fgetpos() trả về giá trị khác 0 nếu có lỗi.

2. Ví dụ về hàm fgetpos() trong C

Ví dụ dưới đây, sử dụng hàm fgetpos() trong C để lấy vị trí file hiện tại của stream và ghi nó tới pos:

#include <stdio.h>

int main () {
  FILE *thisFile;
  fpos_t position;
  int c;
  int n = 0;

  thisFile = fopen("FileMau.txt","w+");
  fgetpos(thisFile, &position);
  fputs("Day la dong chu cu.", thisFile);
  
  fsetpos(thisFile, &position);
  fputs("Day la dong chu moi ghi de len dong chu cu", thisFile);
  fclose(thisFile);  
  
  return(0);
}

Kết quả:

Dòng chữ “Day la dong chu cu” sẽ được thay thế bằng “Day la dong chu moi ghi de len dong chu cu” trong file FileMau.txt.