Manipulação de arquivos em c
Instituto de Física e Matemática Departamento de Matemática, Estatística e Computação Bacharelado em Ciência da Computação Programação I Prof. José Luís Güntzel – semestre 2003/1 Aula 9
9 Manipulação de Arquivos em C
(Fonte: SCHILDT, cap 9 p. 219) A linguagem C não possui nenhum comando de entrada/saída. Todas as operações de entrada/saída ocorrem ocorrem mediante chamadas a funções da biblioteca C padrão. Embora tal característica possa, a prrimeira vista, parecer uma desvantagem, na verdade ela permite que o sistema de arquivos de C seja extremamente poderoso e flexível. O sistema de entrada/saída de C é único porque os dados pçodem ser transferidos na sua representação binária interna ou em um formato de texto legível por humanos. Isso torna fácil criar arquivos que satisfaçam qualquer necessidade. E/S ANSI Versus E/S UNIX. O padrão C ANSI define um conjunto completo de funções de E/S que pode ser utilizado para ler e escrever quaquer tipo de dado. Por outro lado, o antigo padrão C UNIX contém dois sistemas distintos de rotinas que realizam operações de E/S. O primeiro método assemelha-se vagamente ao definido pelo padrão C ANSI e é denominado sistema de arquivo com buffer (também chamado de formatado ou de alto nível). O segundo é o sistema de arquivo tipo UNIX (não formatado ou sem buffer) definido apenas sobre o antigo padrão UNIX. O padrão ANSI não define o sistema sem buffer porque, entre outras coisas, os dois sistemas são amplamente redundantes e o sistema de arquivos tipo UNIX pode não ser relevante a certos ambientes que poderia, de outro modo, suportar C. Nesta disciplina daremos ênfase ao sistema de arquivo C ANSI. O fato de o ANSI não ter definido o sistema de E/S tipo UNIX sugere que seu uso provavelmente irá declinar. De fato, seria muito difícil justificar seu uso em qualquer projeto atual. Poreém, como as rotinas tipo UNIX foram utilizadas em milhares de programas em C existentes, elas não podem ser ignoradas.