Streams e Arquivos em C: E/S e funções principais

Classificado em Computação

Escrito em em português com um tamanho de 2,56 KB

Slide 2: Streams e arquivos em C

O sistema de E/S em C utiliza o conceito de streams e arquivos. Uma stream é um dispositivo lógico que representa um arquivo ou dispositivo. A stream é independente do arquivo ou dispositivo. Um arquivo é interpretado pela linguagem C como qualquer dispositivo, desde um arquivo em disco até um terminal ou uma impressora. Para utilizar um arquivo é necessário associá-lo a uma stream e, então, manipular a stream.

Tipos de streams

  • Texto: conjunto de caracteres; arquivo texto;
  • Binário: sequência de bytes; arquivo binário;

Nem todo arquivo tem os mesmos recursos

  • Arquivo em disco permite acesso aleatório;
  • Um teclado não permite acesso aleatório;
  • Streams são iguais, mas arquivos associados a streams são diferentes;

Ponteiro de arquivo

  • Um ponteiro de arquivo identifica um arquivo específico e é usado pela stream para direcionar as operações de E/S;
  • Um ponteiro de arquivo é uma variável ponteiro do tipo FILE;
  • Para ler ou escrever em arquivos é necessário usar o ponteiro de arquivo;

Funções auxiliares

  • FOPEN: abre uma stream e a associa a um arquivo;
  • FCLOSE: fecha uma stream associada a um arquivo;
  • REWIND: aponta para o início do arquivo;
  • FSEEK: aponta para uma posição específica dentro do arquivo;
  • FFLUSH: esvazia o conteúdo de uma stream aberta para saída;

Manipulando arquivos de texto

  • PUTC: escreve o caractere no arquivo na posição apontada pelo indicador de posição;
  • GETC: retorna o caractere na posição apontada pelo indicador de posição;
  • FPUTS: escreve uma string no arquivo na posição apontada pelo indicador de posição;
  • FGETS: retorna uma string começando na posição apontada pelo indicador de posição até que o caractere de nova linha seja lido ou até que "tamanho-1" caracteres tenham sido lidos;

Manipulando arquivo binário

  • FWRITE: escreve um certo número de itens armazenados em um buffer na posição apontada pelo indicador de posição;
  • FREAD: lê um certo número de itens começando na posição apontada pelo indicador de posição armazenando-os no buffer;

Entradas relacionadas: