Srs, estou tentando executar o seguinte codigo tirado de uma apostila da UFMG reelaborada por José Henrrique dos Santos da UNISANTOS.
Este programa abre um arquivo para escrita, imprime algo nele em seguida o arquivo e fechado e novamente aberto para leitura, ele compila direito só que não funciona como deveria, o codigo é:
#include <stdio.h>
#include <stlib.h>
#include <strig.h>
void main()
{
FILE *p
char c, str[30], frase[80] = "este e um arquivo chamado: ";
int i; /* Le um nome para o arquivo a ser aberto: */
printf("\n\n Entre com um nome para o arquivo:\n");
gets(str); /*O PROGRAMA EXECUTA ATÉ AQUI DEPOIS DÁ ERRO E FECHA*/
if(!(p = fopen(str,"w"))) /*caso ocorra algum erro na abertura do arquivo o programa aborta automaticamente.*/
{
printf ("erro!impossivel abrir o arquivo!\n");
exit(1);
}
/*se não houver erro, imprime no arquivo e fecha.*/
strcat(frase, str);
for (i=0; frase; i++)
putc(frase, p);
fclose(p);
/*abre novamente para leitura*/
p = fopem(str,"r");
c =getc(p); /*le o primeiro caracter enquanto*/
while(!feof(p));/*enquanto não chegar no final do arquivo*/
{
printf("%c",c);/*imprime o caracter na tela*/
c = getc(p);/* le um novo caracter no arquivo*/
}
fclose(p);
}
Quebrei a cabeça no final de semana e não consegui achar o erro. Gostaria de uma ajuda para desvenda-lo
Pergunta
CORTEX_BR
Srs, estou tentando executar o seguinte codigo tirado de uma apostila da UFMG reelaborada por José Henrrique dos Santos da UNISANTOS.
Este programa abre um arquivo para escrita, imprime algo nele em seguida o arquivo e fechado e novamente aberto para leitura, ele compila direito só que não funciona como deveria, o codigo é:
#include <stdio.h>
#include <stlib.h>
#include <strig.h>
void main()
{
FILE *p
char c, str[30], frase[80] = "este e um arquivo chamado: ";
int i; /* Le um nome para o arquivo a ser aberto: */
printf("\n\n Entre com um nome para o arquivo:\n");
gets(str); /*O PROGRAMA EXECUTA ATÉ AQUI DEPOIS DÁ ERRO E FECHA*/
if(!(p = fopen(str,"w"))) /*caso ocorra algum erro na abertura do arquivo o programa aborta automaticamente.*/
{
printf ("erro!impossivel abrir o arquivo!\n");
exit(1);
}
/*se não houver erro, imprime no arquivo e fecha.*/
strcat(frase, str);
for (i=0; frase; i++)
putc(frase, p);
fclose(p);
/*abre novamente para leitura*/
p = fopem(str,"r");
c =getc(p); /*le o primeiro caracter enquanto*/
while(!feof(p));/*enquanto não chegar no final do arquivo*/
{
printf("%c",c);/*imprime o caracter na tela*/
c = getc(p);/* le um novo caracter no arquivo*/
}
fclose(p);
}
Quebrei a cabeça no final de semana e não consegui achar o erro. Gostaria de uma ajuda para desvenda-lo
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.