Ir ao conteúdo
  • Cadastre-se

DDavansoS

Membro Júnior
  • Posts

    4
  • Cadastrado em

  • Última visita

Reputação

0
  1. Depois do programa pronto, estava testando e percebi uma coisa, nada impede do usuario digitar um codigo ja existente no registro na hora de inserir um registro, se ocorrer isso, causara problemas na hora de pesquisar por codigo, pois só um ods registros aparecera sem escolha de qual dos dois, e na hora de deletar um registro, ja que deleta pelo codigo, ira ocorrer o mesmo problema da pesquisa, tentei de varias maneiras um jeito de prevenir que fossem registrados dois codigos iguais, mas não consegui... como posso fazer isso ?? desde ja obrigado de novo
  2. Cara, muito obrigado, deu certo sim, eu tinha visto em um forum que era preciso usar o fseek, mas não sabia a maneira correta de usa-lo, quanto a abertura do arquivo, ela esta sendo feita fora da função alterar, e passo para a função o ponteiro relacionado ao arquivo, eu estava usando o modo de abertura errado para o momento tambem. Bom cara valeu mesmo, tudo de bom pra você ^^
  3. Estou fazendo um programa ( trabalho de faculdade ) , para cadastro de jogos ( era cadastro de qualquer coisa, escolhi jogos ) , é preciso que o programa tenha a opção do usuario alterar um registro existente, os dados são gravados em arquivo... estou postando aqui somente a função que criei para alterar um registro... quando escolho essa opção, no programa, tudo é executado normalmente, mas os dados não são alterados... preciso de uma ajuda aí ^^ desda ja obrigado void alterar(FILE *pont, int codigo) { struct jogo cad; int sucesso=0; do { if (fread(&cad,sizeof(struct jogo),1,pont) == 0) break; if (cad.codigo == codigo) { system("cls"); printf("<<<<<Registro Antigo>>>>>\n\n"); printf("Codigo............: %d\n",cad.codigo); printf("Jogo..............: %s\n",cad.nome_jogo); printf("Plataforma........: %s\n",cad.plataforma); printf("Desenvolvedor'a'..: %s\n",cad.desenvolvedor_a); printf("Ano...............: %d\n\n",cad.ano); printf("<<<<<Digite o Registro novo>>>>\n\n"); printf("Código..........: "); scanf("%d", &cad.codigo); fflush(stdin); printf("Nome do Jogo....: "); gets(cad.nome_jogo); printf("Plataforma......: "); gets(cad.plataforma); printf("Desenvolvedor'a': "); gets(cad.desenvolvedor_a); fflush(stdin); printf("Ano.............: "); scanf("%d", &cad.ano); fflush(stdin); cad.deletado=0; fwrite(&cad,sizeof(struct jogo),1,pont); sucesso=1; break; } } while(1); if (!sucesso) printf("Jogo não encontrado no arquivo\n"); system("pause"); }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!