Arquivos
ARQUIVOS EM C
Existem dois conjuntos de funções de E/S com arquivos na linguagem C. Num primeiro ponto, tem-se a E/S ANSI (com buffer ou formatada) e, em termos mais específicos, tem-se a E/S UNIX (sem buffer ou não formatada). Uma ênfase maior é dada ao primeiro conjunto pela portabilidade deste sistema de entrada e saída com arquivos. Existem dois tipos possíveis de acesso a arquivos na linguagem C : sequencial (lendo um registro após o outro) e aleatório (posicionando-se diretamente num determinado registro). O sistema de arquivos na linguagem C é definido para manipular uma série de dispositivos, tais como terminais, acionadores de disco e outros. Estes dispositivos são vistos como arquivos lógicos em C, denominados STREAM (abstração do dispositivo). O dispositivo real é denominado ARQUIVO (impressora, disco, console e outros). Um STREAM é associado a um ARQUIVO por uma operação de abertura do arquivo e, a partir da associação, todas as demais operações de escrita e leitura podem ser realizadas. A Tabela 1 apresenta as principais funções da linguagem C para manipulação de arquivos. Função Ação Abre um arquivo Fecha um arquivo Escreve um caractere em um arquivo Lê um caractere de um arquivo Posiciona em um registro de um arquivo Efetua impressão formatada em um arquivo Efetua leitura formatada em um arquivo Verifica o final de um arquivo Escreve tipos maiores que 1 byte em um arquivo Lê tipos maiores que 1 byte de um arquivo
fopen() Fclose () putc() e fputc() getc() e fgetc() fseek() fprintf() fscanf() feof() fwrite() fread()
Tabela 1 - Funções do padrão ANSI para manipulação de arquivos
O sistema de entrada e saída do ANSI C é composto por uma série de funções, cujos protótipos estão reunidos em stdio.h . Todas estas funções trabalham com o conceito de "ponteiro de arquivo". Este não é um tipo propriamente dito, mas