programação estruturada ii - bolinhabolinha.com · • nome da estrutura que representa um...
TRANSCRIPT
1
Programação Estruturada II
Arquivos I/O
Prof. Rodrigo [email protected] http://www.bolinhabolinha.com
Apresentação Prof. Rodrigo Rocha – [email protected]
Ementa• Depuração e Documentação interna• Modularização. Uso de funções
Por valor Por referência
• Ponteiros e suas aplicações BásicoUso avançado
• Registros BásicoUso avançado de vetores e matrizes
• Arquivos• Recursão
2
Arquivos Biblioteca
• <stdio.h> As operações de I/O são realizadas em “Stream”
• “Stream” = seqüência de caracteres organizados em linhas
• Cada linha termina com um new line “\n”• Em ANSI, tamanho máximo = 254 caracteres
FILE• Nome da estrutura que representa um arquivo stream• Normalmente acessado via ponteiro *FILE
Definindo o ponteiro Definimos um ponteiro para ser usado no
acesso ao arquivo• FILE *ponteiro_arq;
• O ponteiro_arq recebe o endereço do descritor do arquivo
3
Funções de manipulação de arquivo
Abrindo arquivo Comando: fopen(nomearquivo,modo)
• NomedoarquivoNome do arquivo a ser aberto
• Modo “r” – abre arquivo texto para leitura “w” – abre arquivo texto para escrita “a” – abre arquivo texto para inserção (append) “rb” – abre arquivo binário para leitura “wb” – abre arquivo binário para escrita “ab” – abre arquivo binário para inserção (append)
Exemplo:• FILE *ponteiroarq;• ponteiroarq = fopen("teste.txt","r");
4
Fechando um arquivo fclose(*ponteiro)
• Fecha o arquivo aberto O arquivo é automaticamente fechado
quando sua aplicação termina
Exemplo:• FILE *ponteiroarq;• ponteiroarq = fopen("teste.txt","r");• fclose(ponteiroarq);
Métodos de Acesso Seqüencial
• Dados são lidos seqüencialmente
Randômico• A leitura e escrita pode ser de forma não linear
5
Lendo um caracter simples Função: fgetc(FILE *fp)
• Lê o próximo caractere • Incrementa o offset do arquivo automaticamente• Se sucesso, retorna o valor do caractere• Se falhar retorna EOF
Escrevendo no arquivo Função: fprintf(ponteiro,formatacao,variavel(is)) Similar ao printf, adicionando o parâmetro inicial que é o “ponteiro do
arquivo” Exemplo
• Lendo dados do teclado e gravando em arquivo até apertar o usuário apertar “enter”
6
Lendo caracteres Comando: fscanf(ponteiro,formatacao,variavel(is)) Similar ao scanf, somente adicionado um novo parâmetro na frente de
todos que é o nome do arquivo Se falhar retorna EOF
• EOF = final de arquivo O arquivo deve estar aberto para poder utilizar este comando
Reposicionando o ponteiro Para posicionar o ponteiro no inicio do
arquivo novamente• rewind(ponteiroarq);
8
Lendo os dados
Bibliografia
Livro texto• MIZRAHI, Victorine Viviane. Treinamento em linguagem C : módulos 1 e 2
: PLT.. 1ª ed. São Paulo: Pearson Prentice Hall, 2007.• ASCENCIO, Ana Fernanda Gomes; CAMPOS, Edilene A. V.i de.
Fundamentos da Programação de Computadores : algoritmos, pascal e
C/C++. 1ª ed. São Paulo: Pearson Education, 2003.• SCHILDT, Herbert. C Completo e Total. 3ª ed. São Paulo: Pearson
Education, 2005.
Complementar• 1) KERNIGHAN, Brian. C : a linguagem de programação. 3ª ed. Rio de
Janeiro: CAMPUS, 1986.• 2) HARBISON III, Samuel P.; STEELE/JR., Guy; HARTMANN, Savannah. C :
manual de referência. 1ª ed. Rio de Janeiro: Ciência Moderna, 2002.• 3) LOPES, Anita; GARCIA, Guto. Introdução à Programa. ç1ãªo ed. Rio de
Janeiro: CAMPUS, 2002.• 4) DAMAS, Luís. Linguagem C. 10ª ed. São Paulo: LTC, 2007.