Linguagem c

Disponível somente no TrabalhosFeitos
  • Páginas : 5 (1021 palavras )
  • Download(s) : 0
  • Publicado : 19 de novembro de 2012
Ler documento completo
Amostra do texto
Linguagem C - Entrada e Saida
ARQUIVOS EM DISCO

Entrada e Saída

STREAMS são usados para ler e escrever em C.
Um STREAM pode ser um dispositivo padrão do sistema ou um arquivo específico.
STREAM texto, quando o sistema operacional manipula os dados antes de entregar ao programa C
STREAM binário, não tem transformação pelo sistema operacional o que vem do Programa e vai para o arquivo éigual.
Existem uma associação do STREAM ao arquivo na hora do open. Nem todos os arquivos suportam todas as operações.
O Close desassocia o STREAM do arquivo e força a transferência da área de buffer para o arquivo.

Funções que realizam E/S em console

Getchar() Lê um caracter do teclado; aguarda um enter
Getche() Lê um caracter com eco; não aguarda enter
Getch() Lê um caracter semeco; não aguarda enter
Putchar() Escreve um caracter na tela
Gets() Lê um string do teclado
Puts() Escreve um string para a tela

E/S Formatada
Printf()
Scanf()

E/S ANSI -- Stream/ Arquivo

fopen() Abre um STREAM (arquivo)
fclose fecha um STREAM (arquivo)
putc() Escreve um caractere
getc() Lê um caractere
fseek() Procura por um byte específico
fprintf() Igualao printf() do console.
fscanf() Igual ao scanf() do console
feof() Retorna verdadeiro se encontrou fim arquivo
ferror() Retorna verdadeiro se ocorreu erro
fread() le um bloco de dados
fwrite escreve um bloco de dados
rewind() reposiciona o localizador no inicio do arquivo
remove() apaga um arquivo

No Open de arquivos, Valores legais para o modo:

"r" abre um arquivo paraleitura
"w" cria uma arquivo para escrita
"a" acrescenta dados a um arquivo já existente
"rb" abre um arquivo binário para leitura
"wb" cria um arquivo binário para escrita
"ab" acrescenta dados a um arq binário existente
"r+" abre um arquivo para leitura/escrita
"w+" cria um arquivo para leitura/escrita
"a+" acrescenta dados/cria um arq para leit/escrita
"r+b" abre umarquivo binario para leitura/escrita
"w+b" cria um arquivo binário para leitura/escrita
"a+b" acrescenta ou cria um arq bin para leit/escrita
"rt" abre um arquivo texto para leitura
"wt" cria um arquivo texto para leitura
"at" acrescenta dados a um arquivo texto
"r+t" abre um arquivo texto para leitura/escrita
"w+t" cria um arquivo texto para leitura/escrita
"a+t"acrescenta ou cria arq. texto para leit/escrita

Open de Arquivos

protótipo da função: FILE *fopen(char *nome_de_arquivo, char *modo)
FILE *fp;
if ((fp=fopen("teste", "w")) == NULL)
{ puts("nao posso abrir o arquivo\n");
exit(1);
}


Escrevendo um Caracter

protótipo da função : int putc(int ch, FILE *fp);

Lendo um Caracter

protótipo da função : int getc(FILE *fp);
ch= getc(fp);
while (ch!=EOF) {
ch = getc(fp);
}

Encontrando fim de Arquivo

Determina fim de arquivos para leitura binária (em especial).
protótipo da função: int feof(FILE *fp);

while (!feof(fp)) ch = getc(fp);

Fechando um Arquivo

protótipo da função: int fclose(FILE *fp);

Função Erro e Rewind

protótipo da função: intferror(FILE *fp);
void rewinf(FILE *fp);

Exemplo de uso da funções de E/S

/* Ktod - cria arquivo em disco.. */
#include <stdio.h>
#include <stdlib.h>
main (int argc, char *argv[])
{
FILE *fp;
char ch;
if (argc !=2) { printf ("Falta nome do arquivo \n");
exit (1);
}
if ((fp=fopen (argv[1], "w")) == NULL){
printf ("o arquivo naopode ser aberto\n");
exit (1);
}
do
{
ch = getchar ();
if (EOF == putc(ch,fp))
{
printf("Erro no arquivo durante gravacao");
break;
}
}
while (ch!= '$');...
tracking img