Hàm ftell() trong C

Hàm long int ftell(FILE *stream) trong Thư viện C chuẩn trả về vị trí file hiện tại của Stream đã cho.

Khai báo hàm ftell() trong C

Dưới đây là phần khai báo cho hàm ftell() trong C:

long int ftell(FILE *stream)

Tham số

stream − Đây là con trỏ tới một đối tượng FILE mà nhận diện Stream.

Trả về giá trị

Hàm này trả về giá trị hiện tại của position indicator. Nếu một lỗi xuất hiện, -1 được trả về, và biến toàn cục errno được thiết lập tới một giá trị dương.

Ví dụ

Chương trình C sau minh họa cách sử dụng của hàm ftell() trong C:

#include <stdio.h>

int main ()
{
   FILE *fp;
   int len;

   fp = fopen("baitapc.txt", "r");
   if( fp == NULL ) 
   {
      perror ("Xay ra loi khi mo file!!!");
      return(-1);
   }
   fseek(fp, 0, SEEK_END);

   len = ftell(fp);
   fclose(fp);

   printf("Tong kich co cua baitapc.txt = %d bytes\n", len);
  
   return(0);
}

Giả sử chúng ta có baitapc.txt có nội dung sau:

Hoc C co ban va nang cao tai QTM !!!

Biên dịch và thực thi chương trình trên sẽ cho kết quả sau nếu file có nội dung trên, nếu không thì nó sẽ cho kết quả khác tùy thuộc vào nội dung file.