Função de biblioteca C - ftell ()

Descrição

A função da biblioteca C long int ftell(FILE *stream) retorna a posição atual do arquivo do fluxo fornecido.

Declaração

A seguir está a declaração da função ftell ().

long int ftell(FILE *stream)

Parâmetros

  • stream - Este é o ponteiro para um objeto FILE que identifica o fluxo.

Valor de retorno

Esta função retorna o valor atual do indicador de posição. Se ocorrer um erro, -1L é retornado e a variável global errno é definida com um valor positivo.

Exemplo

O exemplo a seguir mostra o uso da função ftell ().

#include <stdio.h>

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

   fp = fopen("file.txt", "r");
   if( fp == NULL )  {
      perror ("Error opening file");
      return(-1);
   }
   fseek(fp, 0, SEEK_END);

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

   printf("Total size of file.txt = %d bytes\n", len);
  
   return(0);
}

Vamos supor que temos um arquivo de texto file.txt, que tem o seguinte conteúdo -

This is tutorialspoint.com

Agora vamos compilar e executar o programa acima que produzirá o seguinte resultado se o arquivo tiver o conteúdo mencionado acima, caso contrário, ele fornecerá resultados diferentes com base no conteúdo do arquivo -

Total size of file.txt = 26 bytes