Pessoal, estou tento um probleminha com meu código. Estou desenvolvendo uma agenda telefônica como exercício do curso C++. Tudo está indo bem, porém estou com dificuldade de fazer um contador para auxiliar na exibição dos contatos. Ex: 1) Fulano - 00000. A minha ideia é, escanear o ultimo número de contador escrito no arquivo .txt que armazena os dados e depois incrementa-lo e escreve-lo novamente na linha seguinte para o próximo contato. Nos primeiros dois contatos ele escreveu correto, mas depois do segundo começou a repetir o numero 2 para todos os outros.
Tentei fazer laços e atribuir o valor para outra variável auxiliar mas não obtive sucesso. Segue parte do código.
void CadastroNT(char nome[30], int tel){
FILE *arquivo;
char nome1[30];
int tel1 = 0;
int contador = 0;
arquivo = AbrirA("Lista.txt",'l');
while(!feof(arquivo)){
fscanf(arquivo,"%d %s %d\n",&contador,&nome1,&tel1);
if ((strcasecmp(nome1,nome)==1) || (tel1 != tel)){
FechA(arquivo);
arquivo = AbrirA("Lista.txt",'a');
contador ++;
fprintf(arquivo,"%d %s %d\n", contador, nome,tel);
printf("Cadastro efetuado.\n");
FechA(arquivo);
break;
}else{
FechA(arquivo);
printf("Nome ou Telefone já existe. Tente novamente!\n");
break;
}
}
}
Pergunta
Gabriel Passos
Pessoal, estou tento um probleminha com meu código. Estou desenvolvendo uma agenda telefônica como exercício do curso C++. Tudo está indo bem, porém estou com dificuldade de fazer um contador para auxiliar na exibição dos contatos. Ex: 1) Fulano - 00000. A minha ideia é, escanear o ultimo número de contador escrito no arquivo .txt que armazena os dados e depois incrementa-lo e escreve-lo novamente na linha seguinte para o próximo contato. Nos primeiros dois contatos ele escreveu correto, mas depois do segundo começou a repetir o numero 2 para todos os outros.
Tentei fazer laços e atribuir o valor para outra variável auxiliar mas não obtive sucesso. Segue parte do código.
Link para o comentário
Compartilhar em outros sites
1 resposta 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.