Programar em C/Entrada e saída em arquivos: diferenças entre revisões

[revisão pendente][revisão pendente]
Conteúdo apagado Conteúdo adicionado
m <source> -> <syntaxhighlight> (phab:T237267)
 
Linha 71:
=== Exemplo ===
Um pequeno exemplo apenas para ilustrar a abertura e fechamento de arquivos:
<sourcesyntaxhighlight lang="cpp">
#include <stdio.h>
Linha 87:
}
 
</syntaxhighlight>
</source>
 
=== Arquivos pré-definidos ===
Linha 144:
A função retorna o número de itens escritos. Este valor será igual a count a menos que ocorra algum erro. O exemplo abaixo ilustra o uso de fwrite e fread para gravar e posteriormente ler uma variável float em um arquivo binário.
 
<sourcesyntaxhighlight lang="C">
#include <stdio.h>
#include <stdlib.h>
Linha 172:
return 0;
}
</syntaxhighlight>
</source>
 
Nota-se o uso do operador sizeof, que retorna o tamanho em bytes da variável ou do tipo de dados.
Linha 182:
Escreve um caractere no arquivo.O programa a seguir lê uma string do teclado e escreve-a, caractere por caractere em um arquivo em disco (o arquivo arquivo.txt, que será aberto no diretório corrente).
<sourcesyntaxhighlight lang="C">
#include <stdio.h>
#include <stdlib.h>
Linha 203:
return 0;
}
</syntaxhighlight>
</source>
 
Depois de executar este programa, verifique o conteúdo do arquivo arquivo.txt (você pode usar qualquer editor de textos). Você verá que a string que você digitou está armazenada nele.
Linha 292:
int fscanf (FILE *fp,char *str,...);
 
<sourcesyntaxhighlight lang="C">
#include <stdio.h>
#include <stdlib.h>
Linha 317:
return 0;
}
</syntaxhighlight>
</source>
 
=== fread ===
Linha 356:
Outra forma de se verificar se o final do arquivo foi atingido é comparar o caractere lido por getc com EOF. O programa a seguir abre um arquivo já existente e o lê, caracter por caracter, até que o final do arquivo seja atingido. Os caracteres lidos são apresentados na tela:
 
<sourcesyntaxhighlight lang="C">
#include <stdio.h>
#include <stdlib.h>
Linha 375:
return 0;
}
</syntaxhighlight>
</source>
 
Verifique o exemplo.
<sourcesyntaxhighlight lang="C">
#include <stdio.h>
#include <stdlib.h>
Linha 408:
fclose(p); /* Fecha o arquivo */
}
</syntaxhighlight>
</source>
 
== Outras funções ==
Linha 427:
Porém, existem situações em que isto não ocorre. Por exemplo, pode acabar o espaço em disco enquanto gravamos, ou o disco pode estar com problemas e não conseguimos ler, etc. Uma função que pode ser usada em conjunto com ferror() é a função perror() (print error), cujo argumento é uma string que normalmente indica em que parte do programa o problema ocorreu.
 
<sourcesyntaxhighlight lang="C">
#include <stdio.h>
#include <stdlib.h>
Linha 455:
fclose(pf);
}
</syntaxhighlight>
</source>