SlideShare a Scribd company logo
1 of 13
Download to read offline
Estruturas de Dados II

Manipulação de Arquivos
em C
Introdução
Programas que leem dados do teclado e
escrevem na tela do monitor são comuns, mas há
a necessidade de ler dados de um arquivo que
está no disco (HD) e de como gravar um arquivo
no disco.
Motivação
• Entrada (de um programa):
Banco de dados

• Saída: Lista dos funcionários que trabalham na empresa há
mais de 5 anos.
Desenvolvê-lo de modo a termos entrada e saída através de
arquivos.
Arquivo = pode ser visto como um espaço sequencial onde são
lidos ou gravados dados.
Tipos de Arquivo
-Arquivos de acesso sequencial (Texto):
•Arquivos nos quais são gravados e/ou lidos caracteres.
•Podem ser abertos em um editor de textos.

-Arquivos de acesso aleatório( Binário)
•Arquivos nos quais são gravados e/ou lidos dados( por
exemplo, int, float, char, double,struct,etc.).
•Podem ser lidos a partir de qualquer posição, sem a
necessidade de ler todos os dados anteriores.
•Não podemos acessar seu conteúdo através de um
editor de texto.
Manipulação
•
•
•
-

Abertura
Leitura e/ou escrita
Fechamento
Declaração
•Para acessarmos o conteúdo de um arquivo,
declaramos um ponteiro de arquivo:
O ponteiro pf será
associado ao nome do
arquivo a ser aberto.
Manipulação
- Abertura (função fopen)
Protótipo:
FILE* fopen(const char *nome_do_arquivo,const
char *modo);

Exemplo
Manipulação
Função fopen
r

Abre um arquivo texto para leitura. O arquivo deve existir antes
de ser aberto.

w

Abrir um arquivo texto para gravação. Se o arquivo não existir,
ele será criado. Se já existir, o conteúdo anterior será destruído.

a

Abrir um arquivo texto para gravação. Os dados serão
adicionados no fim do arquivo ("append"), se ele já existir, ou um
novo arquivo será
criado, no caso de arquivo não existente anteriormente.

rb

Abre um arquivo binário para leitura. . O arquivo deve existir
antes de ser aberto.

wb

Cria um arquivo binário para escrita. Se já existir, o conteúdo
anterior será destruído

ab

Acrescenta dados binários no fim do arquivo, como no modo "a"
anterior, só que o arquivo é binário.
Manipulação
Função fopen
r+

Abre um arquivo texto para leitura e gravação. O arquivo deve
existir e pode ser modificado.

w+

Cria um arquivo texto para leitura e gravação. Se o arquivo
existir, o conteúdo anterior será destruído. Se não existir, será
criado.

a+

Abre um arquivo texto para gravação e leitura. Os dados serão
adicionados no fim do arquivo se ele já existir, ou um novo
arquivo será
criado, no caso de arquivo não existente anteriormente.

r+b

Abre um arquivo binário para leitura e escrita. O mesmo que "r+"
acima, só que o arquivo é binário.

w+b

Cria um arquivo binário para leitura e escrita. O mesmo que "w+"
acima, só que o arquivo é binário.

a+b

Acrescenta dados ou cria uma arquivo binário para leitura e
escrita. O mesmo que "a+" acima, só que o arquivo é binário.
Manipulação
-

Escrita e leitura em arquivos texto
fputc(int c, FILE *f)

Escreve um caractere c em um arquivo
apontado por f. Devolve o caractere caso a
operação seja bem sucedida ou a constante
EOF caso contrário.

fgetc(FILE *f)

Lê um caractere a partir de um arquivo apontado por
f e devolve um inteiro com o valor deste caractere.

fscanf e fprintf

Funcionam exatamente como as funções scanf() e
printf() comuns, com a diferente de que essas
recebem um parâmetro a mais que é um ponteiro
para o arquivo a ser lido/escrito.

fgets(char *str, int tam,
FILE *f)

Lê uma string com no máximo tam caracteres de um
arquivo f e armazena em str

fputs(char *str, FILE *f)

Escreve uma string str em um arquivo f.
Manipulação
-Escrita e leitura em arquivos binários
fseek(FILE *f, long
tam, int origem)

Posiciona o ponteiro dentro de um arquivo
binário f tam posições após origem. O
parâmetro origem pode ter os seguintes valores:
SEEK_SET
SEEK_CUR
SEEK_END

início do arquivo
posição atual
final do arquivo

fread(void *buffer,
Lê n registros de tamanho b de um arquivo f e
size_t b, size_t n, FILE armazena em buffer e devolve o número de
*f)
elementos lidos.
Fwrite (void *buffer,
Escreve n registros de tamanho b armazenados
size_t b, size_t n, FILE em buffer em um arquivo f.
*f)
rewind(FILE *f)

Redireciona o ponteiro de posição do arquivo f
de volta para o início.
Manipulação
- Fechamento (função fclose)
•
•

Utilizada para fechar um arquivo aberto por fopen().
Retorna zero quando o fechamento se dá com sucesso.

Protótipo:
int fclose(FILE* pf)

Exemplo
Manipulação
- Outras funções para manipulação de arquivos
ferror(FILE *f)

Retorna um inteiro indicando se houve um erro na última
operação feita em um arquivo.

remove(char nome)

Apaga um arquivo com o nome nome do disco. Retorna
zero caso seja bem sucedida e um número diferente caso
contrário.

feof(FILE *f)

Indica quando o final de um arquivo binário f foi atingido.
Retorna um número diferente de zero caso tenha atingido
e zero caso contrário.

fflush(FILE *f)

Esvazia o conteúdo de uma stream de saída e escreve
qualquer conteúdo existente em f. Devolve zero caso
tenha obtido sucesso, caso contrário devolve EOF.
Referências
• Schildt, Herbert. C – Completo e
Total. Makron Books.

More Related Content

What's hot

Ficha de trabalho so 6 m4 linux comandos
Ficha de trabalho so 6 m4   linux comandosFicha de trabalho so 6 m4   linux comandos
Ficha de trabalho so 6 m4 linux comandosAndreiaOliveira94
 
Filestream sistema arquivos
Filestream  sistema arquivosFilestream  sistema arquivos
Filestream sistema arquivosTiago
 
Shell Script - Controle de fluxo
Shell Script - Controle de fluxoShell Script - Controle de fluxo
Shell Script - Controle de fluxoFrederico Madeira
 
Ficha de trabalho so 6 m4 linux comandos(2)
Ficha de trabalho so 6 m4   linux comandos(2)Ficha de trabalho so 6 m4   linux comandos(2)
Ficha de trabalho so 6 m4 linux comandos(2)brunofig94PT
 
Ficha de trabalho_so_6_m4_-_linux_comandos
Ficha de trabalho_so_6_m4_-_linux_comandosFicha de trabalho_so_6_m4_-_linux_comandos
Ficha de trabalho_so_6_m4_-_linux_comandoscrespim89
 
Ficha de trabalho so 6 m4 linux comandos
Ficha de trabalho so 6 m4   linux comandosFicha de trabalho so 6 m4   linux comandos
Ficha de trabalho so 6 m4 linux comandosAndreiaOliveira94
 
Funcionamento do google
Funcionamento do googleFuncionamento do google
Funcionamento do googlefabyanakiss
 
Comandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxComandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxVirgínia
 

What's hot (18)

Ficha de trabalho so 6 m4 linux comandos
Ficha de trabalho so 6 m4   linux comandosFicha de trabalho so 6 m4   linux comandos
Ficha de trabalho so 6 m4 linux comandos
 
Arquivos em C
Arquivos em CArquivos em C
Arquivos em C
 
Fat 32
Fat 32Fat 32
Fat 32
 
Ficha de trabalho [6]
Ficha de trabalho [6]Ficha de trabalho [6]
Ficha de trabalho [6]
 
Comandos CMD
Comandos CMDComandos CMD
Comandos CMD
 
Filestream sistema arquivos
Filestream  sistema arquivosFilestream  sistema arquivos
Filestream sistema arquivos
 
Shell Script - Controle de fluxo
Shell Script - Controle de fluxoShell Script - Controle de fluxo
Shell Script - Controle de fluxo
 
Ficha de trabalho so 6 m4 linux comandos(2)
Ficha de trabalho so 6 m4   linux comandos(2)Ficha de trabalho so 6 m4   linux comandos(2)
Ficha de trabalho so 6 m4 linux comandos(2)
 
Ficha de trabalho_so_6_m4_-_linux_comandos
Ficha de trabalho_so_6_m4_-_linux_comandosFicha de trabalho_so_6_m4_-_linux_comandos
Ficha de trabalho_so_6_m4_-_linux_comandos
 
Ficha de trabalho so 6 m4 linux comandos
Ficha de trabalho so 6 m4   linux comandosFicha de trabalho so 6 m4   linux comandos
Ficha de trabalho so 6 m4 linux comandos
 
Funcionamento do google
Funcionamento do googleFuncionamento do google
Funcionamento do google
 
725
725725
725
 
Comandos filtro
Comandos filtroComandos filtro
Comandos filtro
 
Shell Scipt - Comandos
Shell Scipt - ComandosShell Scipt - Comandos
Shell Scipt - Comandos
 
Comandos do linux
Comandos do linuxComandos do linux
Comandos do linux
 
Comandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxComandos, Permissões e Partições Linux
Comandos, Permissões e Partições Linux
 
Shelltalk
ShelltalkShelltalk
Shelltalk
 
TWP23 Arquivos e Dicionários
TWP23 Arquivos e DicionáriosTWP23 Arquivos e Dicionários
TWP23 Arquivos e Dicionários
 

Viewers also liked

En qué medida el adn nos hace
En qué medida el adn nos haceEn qué medida el adn nos hace
En qué medida el adn nos hacerobert2798
 
Estilos de aprendizaje
Estilos de aprendizajeEstilos de aprendizaje
Estilos de aprendizajefabiolitadel
 
Transferencias intragovernamentais financias_publicas
Transferencias intragovernamentais financias_publicasTransferencias intragovernamentais financias_publicas
Transferencias intragovernamentais financias_publicasMarylly Silva
 
Segunda Guerra Mundial (1939-1945)
Segunda Guerra Mundial (1939-1945)Segunda Guerra Mundial (1939-1945)
Segunda Guerra Mundial (1939-1945)Juliana Maciel
 
Esq 1202 reforma laboral
Esq 1202 reforma laboralEsq 1202 reforma laboral
Esq 1202 reforma laboralEnsenyament
 
Conheça me terezinha
Conheça me terezinhaConheça me terezinha
Conheça me terezinhamaquinabo
 
Actualising Thought Leadership
Actualising Thought LeadershipActualising Thought Leadership
Actualising Thought LeadershipBolaji Okusaga
 
Ms word task1
Ms word task1Ms word task1
Ms word task1musop
 
A Revolução Russa
A Revolução RussaA Revolução Russa
A Revolução RussaRita1A1
 
3ª Catequese - Itinerário JMJ Rio'13
3ª Catequese - Itinerário JMJ Rio'133ª Catequese - Itinerário JMJ Rio'13
3ª Catequese - Itinerário JMJ Rio'13Jotas_Viana
 
EBJ - Encontro 07/10/2012
EBJ - Encontro 07/10/2012EBJ - Encontro 07/10/2012
EBJ - Encontro 07/10/2012EBJ IPBCP
 
Ghiz Photos
Ghiz PhotosGhiz Photos
Ghiz Photosmonaghiz
 

Viewers also liked (20)

1080
10801080
1080
 
En qué medida el adn nos hace
En qué medida el adn nos haceEn qué medida el adn nos hace
En qué medida el adn nos hace
 
Tics
TicsTics
Tics
 
Tipo de aprendizaje
Tipo de aprendizajeTipo de aprendizaje
Tipo de aprendizaje
 
Estilos de aprendizaje
Estilos de aprendizajeEstilos de aprendizaje
Estilos de aprendizaje
 
Luisita
LuisitaLuisita
Luisita
 
Concepto
ConceptoConcepto
Concepto
 
Transferencias intragovernamentais financias_publicas
Transferencias intragovernamentais financias_publicasTransferencias intragovernamentais financias_publicas
Transferencias intragovernamentais financias_publicas
 
Segunda Guerra Mundial (1939-1945)
Segunda Guerra Mundial (1939-1945)Segunda Guerra Mundial (1939-1945)
Segunda Guerra Mundial (1939-1945)
 
Esq 1202 reforma laboral
Esq 1202 reforma laboralEsq 1202 reforma laboral
Esq 1202 reforma laboral
 
5205
52055205
5205
 
Conheça me terezinha
Conheça me terezinhaConheça me terezinha
Conheça me terezinha
 
Actualising Thought Leadership
Actualising Thought LeadershipActualising Thought Leadership
Actualising Thought Leadership
 
Ms word task1
Ms word task1Ms word task1
Ms word task1
 
A Revolução Russa
A Revolução RussaA Revolução Russa
A Revolução Russa
 
Karan chanana
Karan chananaKaran chanana
Karan chanana
 
1993 (1)
1993 (1)1993 (1)
1993 (1)
 
3ª Catequese - Itinerário JMJ Rio'13
3ª Catequese - Itinerário JMJ Rio'133ª Catequese - Itinerário JMJ Rio'13
3ª Catequese - Itinerário JMJ Rio'13
 
EBJ - Encontro 07/10/2012
EBJ - Encontro 07/10/2012EBJ - Encontro 07/10/2012
EBJ - Encontro 07/10/2012
 
Ghiz Photos
Ghiz PhotosGhiz Photos
Ghiz Photos
 

Similar to Manipulação Arquivos C

Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Os Fantasmas !
 
Programação Estruturada 2 - Aula 04
Programação Estruturada 2 - Aula 04Programação Estruturada 2 - Aula 04
Programação Estruturada 2 - Aula 04thomasdacosta
 
Files e File System PHP (Português)
Files e File System PHP (Português)Files e File System PHP (Português)
Files e File System PHP (Português)Emerson Silva
 
http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/Rodrigo Vieira
 
http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/Rodrigo Vieira
 
Aula 05 - Programação Web - Trabalhando com arquivos em PHP
Aula 05 - Programação Web - Trabalhando com arquivos em PHPAula 05 - Programação Web - Trabalhando com arquivos em PHP
Aula 05 - Programação Web - Trabalhando com arquivos em PHPDalton Martins
 
Criando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe FileCriando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe FilePaulo Brito
 
Apresentacao Writer
Apresentacao WriterApresentacao Writer
Apresentacao Writermarcialimadf
 
Prova Comentada - BANRISUL Escriturário 2010
Prova Comentada - BANRISUL Escriturário 2010Prova Comentada - BANRISUL Escriturário 2010
Prova Comentada - BANRISUL Escriturário 2010Vitor Krewer
 
Laboratório de Programação I: Arquivos (texto) em disco
Laboratório de Programação I: Arquivos (texto) em discoLaboratório de Programação I: Arquivos (texto) em disco
Laboratório de Programação I: Arquivos (texto) em discoAlex Camargo
 
Realizar o gerenciamento básico de arquivos 4Linux
Realizar o gerenciamento básico de arquivos 4LinuxRealizar o gerenciamento básico de arquivos 4Linux
Realizar o gerenciamento básico de arquivos 4LinuxSoftD Abreu
 

Similar to Manipulação Arquivos C (20)

Algoritmos - Aula 16 B - Arquivos
Algoritmos - Aula 16 B - ArquivosAlgoritmos - Aula 16 B - Arquivos
Algoritmos - Aula 16 B - Arquivos
 
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
 
Programação Estruturada 2 - Aula 04
Programação Estruturada 2 - Aula 04Programação Estruturada 2 - Aula 04
Programação Estruturada 2 - Aula 04
 
Files e File System PHP (Português)
Files e File System PHP (Português)Files e File System PHP (Português)
Files e File System PHP (Português)
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Java9
Java9Java9
Java9
 
http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/
 
http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/http://www.dm.ufscar.br/~waldeck/curso/java/
http://www.dm.ufscar.br/~waldeck/curso/java/
 
Linguagem C 10 Arquivos
Linguagem C 10 ArquivosLinguagem C 10 Arquivos
Linguagem C 10 Arquivos
 
Ficheiros texto
Ficheiros textoFicheiros texto
Ficheiros texto
 
Java 05
Java 05Java 05
Java 05
 
Workshop Python.2
Workshop Python.2Workshop Python.2
Workshop Python.2
 
Aula 05 - Programação Web - Trabalhando com arquivos em PHP
Aula 05 - Programação Web - Trabalhando com arquivos em PHPAula 05 - Programação Web - Trabalhando com arquivos em PHP
Aula 05 - Programação Web - Trabalhando com arquivos em PHP
 
Pascal Arquivos
Pascal ArquivosPascal Arquivos
Pascal Arquivos
 
Criando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe FileCriando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe File
 
Apresentacao Writer
Apresentacao WriterApresentacao Writer
Apresentacao Writer
 
Aula 1 arquivo
Aula 1 arquivoAula 1 arquivo
Aula 1 arquivo
 
Prova Comentada - BANRISUL Escriturário 2010
Prova Comentada - BANRISUL Escriturário 2010Prova Comentada - BANRISUL Escriturário 2010
Prova Comentada - BANRISUL Escriturário 2010
 
Laboratório de Programação I: Arquivos (texto) em disco
Laboratório de Programação I: Arquivos (texto) em discoLaboratório de Programação I: Arquivos (texto) em disco
Laboratório de Programação I: Arquivos (texto) em disco
 
Realizar o gerenciamento básico de arquivos 4Linux
Realizar o gerenciamento básico de arquivos 4LinuxRealizar o gerenciamento básico de arquivos 4Linux
Realizar o gerenciamento básico de arquivos 4Linux
 

Manipulação Arquivos C

  • 1. Estruturas de Dados II Manipulação de Arquivos em C
  • 2. Introdução Programas que leem dados do teclado e escrevem na tela do monitor são comuns, mas há a necessidade de ler dados de um arquivo que está no disco (HD) e de como gravar um arquivo no disco.
  • 3. Motivação • Entrada (de um programa): Banco de dados • Saída: Lista dos funcionários que trabalham na empresa há mais de 5 anos. Desenvolvê-lo de modo a termos entrada e saída através de arquivos. Arquivo = pode ser visto como um espaço sequencial onde são lidos ou gravados dados.
  • 4. Tipos de Arquivo -Arquivos de acesso sequencial (Texto): •Arquivos nos quais são gravados e/ou lidos caracteres. •Podem ser abertos em um editor de textos. -Arquivos de acesso aleatório( Binário) •Arquivos nos quais são gravados e/ou lidos dados( por exemplo, int, float, char, double,struct,etc.). •Podem ser lidos a partir de qualquer posição, sem a necessidade de ler todos os dados anteriores. •Não podemos acessar seu conteúdo através de um editor de texto.
  • 5. Manipulação • • • - Abertura Leitura e/ou escrita Fechamento Declaração •Para acessarmos o conteúdo de um arquivo, declaramos um ponteiro de arquivo: O ponteiro pf será associado ao nome do arquivo a ser aberto.
  • 6. Manipulação - Abertura (função fopen) Protótipo: FILE* fopen(const char *nome_do_arquivo,const char *modo); Exemplo
  • 7. Manipulação Função fopen r Abre um arquivo texto para leitura. O arquivo deve existir antes de ser aberto. w Abrir um arquivo texto para gravação. Se o arquivo não existir, ele será criado. Se já existir, o conteúdo anterior será destruído. a Abrir um arquivo texto para gravação. Os dados serão adicionados no fim do arquivo ("append"), se ele já existir, ou um novo arquivo será criado, no caso de arquivo não existente anteriormente. rb Abre um arquivo binário para leitura. . O arquivo deve existir antes de ser aberto. wb Cria um arquivo binário para escrita. Se já existir, o conteúdo anterior será destruído ab Acrescenta dados binários no fim do arquivo, como no modo "a" anterior, só que o arquivo é binário.
  • 8. Manipulação Função fopen r+ Abre um arquivo texto para leitura e gravação. O arquivo deve existir e pode ser modificado. w+ Cria um arquivo texto para leitura e gravação. Se o arquivo existir, o conteúdo anterior será destruído. Se não existir, será criado. a+ Abre um arquivo texto para gravação e leitura. Os dados serão adicionados no fim do arquivo se ele já existir, ou um novo arquivo será criado, no caso de arquivo não existente anteriormente. r+b Abre um arquivo binário para leitura e escrita. O mesmo que "r+" acima, só que o arquivo é binário. w+b Cria um arquivo binário para leitura e escrita. O mesmo que "w+" acima, só que o arquivo é binário. a+b Acrescenta dados ou cria uma arquivo binário para leitura e escrita. O mesmo que "a+" acima, só que o arquivo é binário.
  • 9. Manipulação - Escrita e leitura em arquivos texto fputc(int c, FILE *f) Escreve um caractere c em um arquivo apontado por f. Devolve o caractere caso a operação seja bem sucedida ou a constante EOF caso contrário. fgetc(FILE *f) Lê um caractere a partir de um arquivo apontado por f e devolve um inteiro com o valor deste caractere. fscanf e fprintf Funcionam exatamente como as funções scanf() e printf() comuns, com a diferente de que essas recebem um parâmetro a mais que é um ponteiro para o arquivo a ser lido/escrito. fgets(char *str, int tam, FILE *f) Lê uma string com no máximo tam caracteres de um arquivo f e armazena em str fputs(char *str, FILE *f) Escreve uma string str em um arquivo f.
  • 10. Manipulação -Escrita e leitura em arquivos binários fseek(FILE *f, long tam, int origem) Posiciona o ponteiro dentro de um arquivo binário f tam posições após origem. O parâmetro origem pode ter os seguintes valores: SEEK_SET SEEK_CUR SEEK_END início do arquivo posição atual final do arquivo fread(void *buffer, Lê n registros de tamanho b de um arquivo f e size_t b, size_t n, FILE armazena em buffer e devolve o número de *f) elementos lidos. Fwrite (void *buffer, Escreve n registros de tamanho b armazenados size_t b, size_t n, FILE em buffer em um arquivo f. *f) rewind(FILE *f) Redireciona o ponteiro de posição do arquivo f de volta para o início.
  • 11. Manipulação - Fechamento (função fclose) • • Utilizada para fechar um arquivo aberto por fopen(). Retorna zero quando o fechamento se dá com sucesso. Protótipo: int fclose(FILE* pf) Exemplo
  • 12. Manipulação - Outras funções para manipulação de arquivos ferror(FILE *f) Retorna um inteiro indicando se houve um erro na última operação feita em um arquivo. remove(char nome) Apaga um arquivo com o nome nome do disco. Retorna zero caso seja bem sucedida e um número diferente caso contrário. feof(FILE *f) Indica quando o final de um arquivo binário f foi atingido. Retorna um número diferente de zero caso tenha atingido e zero caso contrário. fflush(FILE *f) Esvazia o conteúdo de uma stream de saída e escreve qualquer conteúdo existente em f. Devolve zero caso tenha obtido sucesso, caso contrário devolve EOF.
  • 13. Referências • Schildt, Herbert. C – Completo e Total. Makron Books.